From: <sag...@us...> - 2011-05-15 20:29:22
|
Revision: 874 http://modplug.svn.sourceforge.net/modplug/?rev=874&view=rev Author: saga-games Date: 2011-05-15 20:29:13 +0000 (Sun, 15 May 2011) Log Message: ----------- [Fix] Added a fix for the recent VS2008 security update bloatage... [Fix] Hopefully this fixes the line endings in History.txt... [Mod] Installer: Added option to view release notes after installation. [Ref] Minor refactoring in view_pat.cpp Modified Paths: -------------- trunk/OpenMPT/installer/install.iss trunk/OpenMPT/mptrack/STDAFX.CPP trunk/OpenMPT/mptrack/View_pat.cpp trunk/OpenMPT/packageTemplate/History.txt Modified: trunk/OpenMPT/installer/install.iss =================================================================== --- trunk/OpenMPT/installer/install.iss 2011-05-15 20:26:20 UTC (rev 873) +++ trunk/OpenMPT/installer/install.iss 2011-05-15 20:29:13 UTC (rev 874) @@ -115,8 +115,9 @@ [Run] ; duh +Filename: "https://sourceforge.net/projects/kernelex/"; Description: "Download KernelEx (required on Windows 98 / Me)"; Flags: shellexec nowait postinstall skipifsilent; Check: not UsingWinNT(); +Filename: "{app}\OMPT_{#GetAppVersionShort}_ReleaseNotes.html"; Description: "View Release Notes"; Flags: shellexec nowait postinstall skipifsilent Filename: {app}\mptrack.exe; Parameters: """{app}\ExampleSongs\manwe - evening glow.it"""; Description: {cm:LaunchProgram,OpenMPT}; Flags: nowait postinstall skipifsilent -Filename: "https://sourceforge.net/projects/kernelex/"; Description: "Download KernelEx (required on Windows 98 / Me)"; Flags: shellexec nowait postinstall skipifsilent; Check: not UsingWinNT(); [UninstallDelete] ; internet shortcut has to be deleted manually Modified: trunk/OpenMPT/mptrack/STDAFX.CPP =================================================================== --- trunk/OpenMPT/mptrack/STDAFX.CPP 2011-05-15 20:26:20 UTC (rev 873) +++ trunk/OpenMPT/mptrack/STDAFX.CPP 2011-05-15 20:29:13 UTC (rev 874) @@ -4,3 +4,29 @@ #include "stdafx.h" +// Fix for VS2008 SP1 bloatage (http://tedwvc.wordpress.com/2011/04/16/static-mfc-code-bloat-problem-from-vc2010-is-now-in-vc2008-sp1security-fix/): + +// this is our own local copy of the AfxLoadSystemLibraryUsingFullPath function +HMODULE AfxLoadSystemLibraryUsingFullPath(const WCHAR *pszLibrary) +{ + WCHAR wszLoadPath[MAX_PATH+1]; + if (::GetSystemDirectoryW(wszLoadPath, _countof(wszLoadPath)) == 0) + { + return NULL; + } + + if (wszLoadPath[wcslen(wszLoadPath)-1] != L'\\') + { + if (wcscat_s(wszLoadPath, _countof(wszLoadPath), L"\\") != 0) + { + return NULL; + } + } + + if (wcscat_s(wszLoadPath, _countof(wszLoadPath), pszLibrary) != 0) + { + return NULL; + } + + return(::AfxCtxLoadLibraryW(wszLoadPath)); +} Modified: trunk/OpenMPT/mptrack/View_pat.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_pat.cpp 2011-05-15 20:26:20 UTC (rev 873) +++ trunk/OpenMPT/mptrack/View_pat.cpp 2011-05-15 20:29:13 UTC (rev 874) @@ -5070,17 +5070,21 @@ UINT startRow = GetSelectionStartRow(); UINT endRow = GetSelectionEndRow(); - if (ListChansWhereColSelected(NOTE_COLUMN, validChans)>0) { - for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) { + if (ListChansWhereColSelected(NOTE_COLUMN, validChans) > 0) + { + for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) + { if (IsInterpolationPossible(startRow, endRow, - validChans[valChnIdx], NOTE_COLUMN, pSndFile)) { + validChans[valChnIdx], NOTE_COLUMN, pSndFile)) + { greyed=0; //Can do interpolation. break; } } } - if (!greyed || !(CMainFrame::m_dwPatternSetup&PATTERN_OLDCTXMENUSTYLE)) { + if (!greyed || !(CMainFrame::m_dwPatternSetup&PATTERN_OLDCTXMENUSTYLE)) + { AppendMenu(hMenu, MF_STRING|greyed, ID_PATTERN_INTERPOLATE_NOTE, "Interpolate Note\t" + ih->GetKeyTextFromCommand(kcPatternInterpolateNote)); return true; } @@ -5096,16 +5100,20 @@ UINT startRow = GetSelectionStartRow(); UINT endRow = GetSelectionEndRow(); - if (ListChansWhereColSelected(VOL_COLUMN, validChans)>0) { - for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) { + if (ListChansWhereColSelected(VOL_COLUMN, validChans) > 0) + { + for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) + { if (IsInterpolationPossible(startRow, endRow, - validChans[valChnIdx], VOL_COLUMN, pSndFile)) { - greyed=0; //Can do interpolation. + validChans[valChnIdx], VOL_COLUMN, pSndFile)) + { + greyed = 0; //Can do interpolation. break; } } } - if (!greyed || !(CMainFrame::m_dwPatternSetup&PATTERN_OLDCTXMENUSTYLE)) { + if (!greyed || !(CMainFrame::m_dwPatternSetup&PATTERN_OLDCTXMENUSTYLE)) + { AppendMenu(hMenu, MF_STRING|greyed, ID_PATTERN_INTERPOLATE_VOLUME, "Interpolate Vol Col\t" + ih->GetKeyTextFromCommand(kcPatternInterpolateVol)); return true; } @@ -5122,26 +5130,33 @@ UINT startRow = GetSelectionStartRow(); UINT endRow = GetSelectionEndRow(); - if (ListChansWhereColSelected(EFFECT_COLUMN, validChans)>0) { - for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) { - if (IsInterpolationPossible(startRow, endRow, validChans[valChnIdx], EFFECT_COLUMN, pSndFile)) { + if (ListChansWhereColSelected(EFFECT_COLUMN, validChans) > 0) + { + for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) + { + if (IsInterpolationPossible(startRow, endRow, validChans[valChnIdx], EFFECT_COLUMN, pSndFile)) + { greyed=0; //Can do interpolation. break; } } } - if (ListChansWhereColSelected(PARAM_COLUMN, validChans)>0) { - for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) { - if (IsInterpolationPossible(startRow, endRow, validChans[valChnIdx], EFFECT_COLUMN, pSndFile)) { - greyed=0; //Can do interpolation. + if (ListChansWhereColSelected(PARAM_COLUMN, validChans) > 0) + { + for (int valChnIdx=0; valChnIdx<validChans.GetCount(); valChnIdx++) + { + if (IsInterpolationPossible(startRow, endRow, validChans[valChnIdx], EFFECT_COLUMN, pSndFile)) + { + greyed = 0; //Can do interpolation. break; } } } - if (!greyed || !(CMainFrame::m_dwPatternSetup&PATTERN_OLDCTXMENUSTYLE)) { + if (!greyed || !(CMainFrame::m_dwPatternSetup&PATTERN_OLDCTXMENUSTYLE)) + { AppendMenu(hMenu, MF_STRING|greyed, ID_PATTERN_INTERPOLATE_EFFECT, "Interpolate Effect\t" + ih->GetKeyTextFromCommand(kcPatternInterpolateEffect)); return true; } @@ -5161,10 +5176,10 @@ AppendMenu(pasteSpecialMenu, MF_STRING, ID_EDIT_PASTEFLOOD, "Paste Flood\t" + ih->GetKeyTextFromCommand(kcEditPasteFlood)); AppendMenu(pasteSpecialMenu, MF_STRING, ID_EDIT_PUSHFORWARDPASTE, "Push Forward Paste (Insert)\t" + ih->GetKeyTextFromCommand(kcEditPushForwardPaste)); - DWORD greyed = pModDoc->GetPatternUndo()->CanUndo()?FALSE:MF_GRAYED; + DWORD greyed = pModDoc->GetPatternUndo()->CanUndo() ? MF_ENABLED : MF_GRAYED; if (!greyed || !(CMainFrame::m_dwPatternSetup & PATTERN_OLDCTXMENUSTYLE)) { - AppendMenu(hMenu, MF_STRING|greyed, ID_EDIT_UNDO, "Undo\t" + ih->GetKeyTextFromCommand(kcEditUndo)); + AppendMenu(hMenu, MF_STRING | greyed, ID_EDIT_UNDO, "Undo\t" + ih->GetKeyTextFromCommand(kcEditUndo)); } AppendMenu(hMenu, MF_STRING, ID_CLEAR_SELECTION, "Clear selection\t" + ih->GetKeyTextFromCommand(kcSampleDelete)); Modified: trunk/OpenMPT/packageTemplate/History.txt =================================================================== --- trunk/OpenMPT/packageTemplate/History.txt 2011-05-15 20:26:20 UTC (rev 873) +++ trunk/OpenMPT/packageTemplate/History.txt 2011-05-15 20:29:13 UTC (rev 874) @@ -1,1983 +1,1983 @@ -OpenMPT - Full Version History ------------------------------- - -[Fix]: bug fix -[New]: new feature -[Imp]: improvement -[Reg]: known issue / regression -[Mod]: change -[Var]: other -(tx XYZ): thanks to XYZ for telling us about the bug / requesting the feature - - -v1.19.02.00 (May 2011, revision 871) ------------------------------------- -Pattern tab - [New] <Jojo> Channels can now be moved by dragging their channel header. Holding Shift while doing so duplicates the channel. - [Imp] <Jojo> Moving channels through the channel manager creates an undo point now. - [Fix] <Jojo> Order list info text now truncates list length after the first "---" pattern for MOD files in hex display mode as well. - -Pattern tab::Note properties - [Fix] <Jojo> Axx is not limited to value 7F anymore in IT / S3M format. - -VST - [New] <Jojo> New menu entry in the plugin editor: Create instrument from plugin - [Fix] <Jojo> Fixed note handling in VST editor of plugins that actually don't support MIDI input (http://bugs.openmpt.org/view.php?id=102) - -Mod Conversion - [Imp] <Jojo> Improved conversion of Sxx (IT / S3M) and PC Notes. - [Mod] <Jojo> When converting from MOD / S3M to XM / IT, compatible play is automatically enabled. - [Fix] <Jojo> Sustain loop conversion didn't work - -Playback - [Fix] <Jojo> The first triggered note in the pattern / sample / instrument editor is not cut off anymore (tx C-jeff, http://bugs.openmpt.org/view.php?id=123) - -IT - [Imp] <Jojo> When clearing MIDI macros during loading, only the Zxx macros are cleared, but not the global (currently unused) configuration. - [Fix] <Jojo> Panning slides with both parameter nibbles set were not ignored in compatible mode. - -XM - [Fix] <Jojo> When using compatibility export, the number of samples per instrument is now limited to 16. - -MOD - [Imp] <Jojo> Instead of cutting the order list after the first --- pattern, such order items are simply removed from the saved order list. (http://bugs.openmpt.org/view.php?id=118) - [Fix] <Jojo> "+++" separator patterns were allowed in MOD files, which made them break in other trackers / players. (http://bugs.openmpt.org/view.php?id=118) - -S3M - [Imp] <Jojo> When clearing MIDI macros during loading, only the Zxx macros are cleared, but not the global (currently unused) configuration. - -Other formats - [Imp] <Jojo> DMF Loader was rewritten completely and is a whole lot more accurate now. - [Fix] <Jojo> J2B Loader: Empty sample slots are now treated correct in new (RIFF AM) J2B files. - [Fix] <Jojo> DBM Loader: Global volume was scaled wrong. - [Fix] <Jojo> 8SVX Loader: If no sample could be found in the file, the loader does not claim to have successfully loaded a sample anymore. (http://bugs.openmpt.org/view.php?id=117) - -Misc - [New] <Jojo> OpenMPT can now automatically check for updates (daily / weekly / monthly) - [Mod] <Jojo> "Embed MIDI macros" is now only enabled during song creation if the user's default MIDI macro setup differs from standard configuration. - [Fix] <Jojo> When using "Convert instruments to samples" in the Song Cleanup dialog, "Remove samples associated with an instrument" actually destroyed all samples. - [Reg] <Jojo> Removed hidden INI flag to suppress warnings when encountering keymaps with unknown items. This option was introduced when faulty keymaps threw multiple message boxes, but now it's just one and it shouldn't be ignored... - - -v1.19.01.00 (April 2011, revision 836) --------------------------------------- -Pattern tab - [New] <Jojo> Clicking and dragging the row numbers selects the whole row in Excel / Calc style (http://bugs.openmpt.org/view.php?id=45) - [New] <Jojo> The new keyboard shortcuts "Select beat" and "Select measure" can be used to automatically extend the current selection to the beat / measure boundaries. - [New] <Jojo> Experimental feature: Play the whole pattern row when entering notes and chords into the pattern editor. This can be enabled from the setup screen. - [Mod] <Jojo> Using the Goto Dialog updates channel parameters and sets the elapsed time now. (http://bugs.openmpt.org/view.php?id=28) - [Mod] <Jojo> Undo steps have been increased from 100 to 1000. - [Fix] <Jojo> Shrink selection is more consistent with Shrink pattern now: Entries on odd rows are not ignored anymore if there is no entry in the even rows. Also, cleaning of the pattern after shrinking the selection has been fixed - it cleaned whole commands instead of just the selected parts of a command. (http://bugs.openmpt.org/view.php?id=89) - [Fix] <Jojo> Cursor paste was possible even when editing was disabled. - [Fix] <Jojo> Using Right-Click -> Change Plugin on PC notes did not work for plugin numbers that were higher than the highest instrument number. - [Fix] <Jojo> When entering chords into the pattern editor, the module was only marked as modified if the base note of the chord was changed. - [Fix] <Jojo> When jumping to an order which is normally not played, the song variables are now reset (previously, if the main song had f.e. a global volume fade out at the end, this was retained when switching to an unplayed order, effectively muting all sub songs). - [Fix] <Jojo> OpenMPT does not crash anymore when applying the Amplify command on a pattern selection that just covers the note / instrument column of the first channel. - [Fix] <Jojo> Queueing a "---" or "+++" item now automatically moves the queue "cursor" to the next available pattern. Previously, queueing a "---" pattern restarted the song. - [Fix] <Jojo> Changing a channel name from the pattern editor didn't mark the document as modified (http://bugs.openmpt.org/view.php?id=65) - [Fix] <Jojo> When restarting a pattern, the song timer was not reset properly. - [Fix] <Jojo> Entering a note-off event in the MOD format created an unnecessary undo event. - [Fix] <Jojo> Automation data is not written to the pattern if the current module format does not support smooth midi macros. - [Fix] <Jojo> Selections were not clamped properly to the end of the pattern sometimes. - [Reg] <Jojo> The "Position aware timer" option is gone. The position aware timer is now automatically used. It was optional in the first place because of some buggy code, which is now fixed. - -Pattern tab::Note properties - [Fix] <Jojo> The meaning of Q0x was displayed wrong for IT / S3M. - [Fix] <Jojo> Changing a value didn't create an undo point. (http://bugs.openmpt.org/view.php?id=56) - [Fix] <Jojo> Setting the PC note plugin didn't work. - -Pattern tab::Find/replace - [New] <Jojo> Added Find / Replace mode: Find in current pattern selection. (http://bugs.openmpt.org/view.php?id=42) - [Imp] <Jojo> When changing the content of a combobox, the corresponding checkbox is now automatically checked. Likewise, the "Replace By" checkbox is checked if a checkbox or combobox on the "Replace" tab is enabled. - [Mod] <Jojo> "Replace All" just creates one undo point now. - -Pattern tab::GUI - [Imp] <Jojo> Special paste modes have been moved to a sub menu in the context menu, to save some space. - [Imp] <Jojo> Status bar now indicates if highpass filter is enabled on a channel. (http://bugs.openmpt.org/view.php?id=92) - [Imp] <Jojo> The dodgy note colour is now also customisable. - [Mod] <Jojo> When removing a channel (via context menu) that contains no data in any pattern, no warning is shown anymore. - -Sample tab - [New] <Jojo> There's a new tool to create seamless sample loops: The loop crossfader. Includes a new keyboard shortcut. (http://bugs.openmpt.org/view.php?id=53) - [New] <Jojo> The new "sample grid" feature can create equally-sized sample selections, so it is f.e. easy to split a sample into four equally-sized samples. - [New] <Jojo> New context menu item and keyboard shortcut: Quick fade for samples. If the sample start is selected, a fade-in is automatically performed. Likewise, if the sample end is selected, a fade-out is performed. If neither is selected, the default amplification dialog is shown. - [Imp] <re> Ctrl + Mouse Wheel can now be used for zooming into the sample data. - [Mod] <Jojo> Undo steps have been increased from 100 to 1000 (per sample). - [Fix] <Jojo> When cutting samples with a loop, the loop end point was not always moved correctly if the cut start was in the loop. - [Fix] <Jojo> Loop point controls also accept large numbers to be inputted manually. - [Fix] <Jojo> Sample Undo didn't preserve the sample name. - [Fix] <re> Changing zoom level should now preserve the view position better. (http://bugs.openmpt.org/view.php?id=3) - -Instrument tab - [New] <Jojo> Clicking on an empty plugin slot in the plugin dropdown list opens the "Add Plugin" dialog (tx coda) - [Imp] <re> Ctrl + Mouse Wheel can now be used for zooming into the envelopes. - [Imp] <Jojo> When pressing the up arrow key in the sample map while the cursor is on the lowest note (C-0), the sample map doesn't lose focus anymore. It is also not possible anymore to move the sample map out of view by clicking the area above the lowest note. - [Mod] <Jojo> Copying and pasting envelopes with no points isn't possible anymore. (Who wants to do that anyway?) - [Fix] <Jojo> Fadeout control also accepts large numbers to be inputted manually. (http://bugs.openmpt.org/view.php?id=81) - [Fix] <Jojo> Changing the filter mode didn't mark the file as modified. - [Fix] <Jojo> The note mapping doesn't allow items anymore that aren't notes (such as "no note" or "note cut"). Such notes couldn't be entered manually, however when converting from other formats this was possible and it could crash the tracker (http://bugs.openmpt.org/view.php?id=61). - [Fix] <Jojo> Various actions in the instrument note map and envelope view should now also mark the instrument as modified (when working in the ITP format). - -VST - [New] <Jojo> Plugins can now request common file dialogs (file and directory selection). - [Mod] <Jojo> When automatically inserting a new instrument from the VST editor, the bank and patch values are now not filled in anymore, so it is easier to change to another patch while editing. - [Mod] <Jojo> Various small improvements to support VST 2.4 plugins better. - [Fix] <Jojo> Speaker arrangement is now sent to the plugins upon initialization. This fixes Voxengo SPAN 2 (a VST 2.4 plugin). Does this break other multichannel plugins? - [Fix] <Jojo> The time signature sent to VST plugins should be correct now. The denominator is always assumed to be 4, so a 6/8 signature is for example not possible. - [Fix] <Jojo> The EnergyXT GUI does now also work after closing and re-opening the VST editor. (tx Nahkranoth, http://forum.openmpt.org/index.php?topic=2307.0) - [Fix] <Jojo> Fixed garbage characters shown in preset fields of plugins that don't return program names. - -Mod Conversion - [Imp] <Jojo> If the new format doesn't support restart positions, it is now tried to convert the restart position to a pattern command. - [Imp] <Jojo> When converting patterns from a format with instruments to a format without instruments (or when removing all instruments using the cleanup dialog), the instrument note mapping is now also taken care of. - [Imp] <Jojo> Sample sustain loops are now converted to normal loops if needed and possible. - [Imp] <Jojo> Bidi loops are disabled when converting to MOD / S3M now. - [Imp] <Jojo> More warnings are shown, old warning messages were improved. - [Imp] <Jojo> Volume command priority when converting from XM to IT / S3M has been changed - Cxx overrides vxx in XM, so this is now taken into account. - [Imp] <Jojo> When converting to XM, the E60 bug is now tried to be compensated. - [Fix] <Jojo> Q0y means "no volume change" in S3M / IT, but R0y means "continue volume change" in FT2, and converting from IT / S3M to XM didn't consider this. Q0y is now converted to R8y, and E9y is now converted to Q0y (instead of Q8y). - -Playback - [New] <Jojo> New mix mode: Compatible. This is used for MOD / S3M / XM / IT by default and has more appropriate mixing levels for those formats (same levels as Schism Tracker) than mix mode RC3, and it forces soft panning to be *disabled*. Please use compatible mixing levels when working with legacy formats from now on. (http://bugs.openmpt.org/view.php?id=6) - [Imp] <Jojo> Improved the algorithm for finding a free channel for note playback in the editor (does not affect normal module playback). - [Mod] <Jojo> A new mechanism is used to determine the end of playback. This introduces some great changes in the code. One advantage of the new mechanism is that backwards playing patterns can now be exported to WAV properly (http://bugs.openmpt.org/view.php?id=21). The new code might not stop playback properly if "loop song" is disabled and the user jumped around in the module - let's see how that works... (it's not like this has worked properly before anyway) - [Fix] <Jojo> Pattern jumps to the same row + pattern as the jump command are not ignored anymore. (http://forum.openmpt.org/index.php?topic=1810.0) - -IT - [New] <Jojo> Edit history information can now be read from and saved to IT / MPTM files. This is based on an undocumented feature in Impulse Tracker. Use View -> Edit History for viewing or deleting this information. - [Imp] <Jojo> IT files made with Modplug Tracker 1.00a5 are now also detected as such. Since long patterns can also be created in other trackers (e.g. Chibi), long patterns are not used to identify files made with MPT anymore. - [Mod] <Jojo> Sane values are used again for the "cwtv" and "cmwt" header fields when saving IT files; in fact the same values as in compatibility export are used. To be able to distinguish between raped and compatibility-exported IT files, "OMPT" is written in the "reserved" header field. As a consequence, IT files made with OpenMPT can now be loaded in Impulse Tracker again. - [Fix] <Jojo> Incorrect notes were memorized for PPS (and possibly other effects) when working with instruments that had non-default note assignments (f.e. C-5 => D-4) - [Fix] <Jojo> In compatible mode, bidi loops are now treated like in IT's software mixer. (http://bugs.openmpt.org/view.php?id=29) - [Fix] <Jojo> Sample autovibrato is now hopefully a bit closer to Impulse Tracker in compatible mode... (http://bugs.openmpt.org/view.php?id=5) - [Fix] <Jojo> The envelope handling was altered slightly to work more like in Schism Tracker. This fixes a combination of Envelope Carry + Portamento as it can be found in "electric bunny" by Alpha C. - [Fix] <Jojo> Various fixes to playback of multi-sample instruments. "Ultima Ratio" by Nebularia and "Shuttle Departure" by Sphenx sound better now. - [Fix] <Jojo> The extended sample map is not saved anymore in the instrument headers when using compatibility export. - -IT::Loading and Saving - [Imp] <Jojo> Autovibrato sweep is now fixed when loading IT files made with old versions of (Open)MPT. - [Mod] <Jojo> MIDI macros are now cleared when loading IT files made with old Impulse Tracker versions (< 2.14), so that Zxx commands won't break the songs anymore (fixes denonde.it, fix from Schism Tracker). - [Fix] <Jojo> Note mapping items that aren't notes (f.e. empty notes) are now ignored when loading and saving. - [Fix] <Jojo> When saving, non-existing envelopes are now replaced by a default (disabled) envelope, so that they can still be edited in Impulse Tracker. - -MPTM - [New] <Jojo> Each pattern can now have a custom time signature (rows per beat and rows per measure) which can be set from the pattern properties dialog. (http://forum.openmpt.org/index.php?topic=4022.0) - [New] <Jojo> Edit history information (read the "IT" section above for an explanation) - -XM - [Fix] <Jojo> Various mind-boggling combinations of EDx, notes and instrument numbers should work correctly in compatible mode now. - [Fix] <Jojo> When there's a instrument number next to a 3xx effect which differs from the previous instrument number, it resets the instrument properties of the previous instrument in compatible mode. - [Fix] <Jojo> Portamento combined with an Offset command results in the offset command being ignored in compatible mode. - [Fix] <Jojo> XM Loader: Fixed handling of instruments with no samples, so that instruments assigned to VST plugins work correctly. - -MOD - [Imp] <Jojo> It's now possible to create MOD files with more than 64 distinct patterns. Just like in ProTracker, such MOD files are identified by the "M!K!" signature (instead of M.K.) - [Fix] <Jojo> The maximum speed for MOD files was off by one in some places (31 instead of 32). - -MOD::Loading - [New] <Jojo> Heuristic detection for VBlank MODs. Most MODs use the CIA timer instead of VBlank timing, but some don't. - [New] <Jojo> Heuristic detection for PT 1.x playback mode: If there is pattern data that looks like it needs on-the-fly sample swapping, PT 1.x mode is enabled. - [New] <Jojo> Heuristic detection for MODs with 7-bit panning, which is then automatically converted to 8-bit panning. - [Fix] <Jojo> Tentative fix for MODs with short loops at the sample start that were most likely not intended. - -S3M - [Mod] <Jojo> Changed some code in the S3M loader that should only affect really broken S3M files which every player handles different anyway (at least my broken version of aa-polym.s3m sounds better now) - [Fix] <Jojo> Octave 8 was allowed in S3M files while it shouldn't (it wasn't even saved in the file) - [Fix] <Jojo> S3M Loader: Fix to pattern loader (for empty patterns) - [Fix] <Jojo> Removed the X param (#) effect from the supported effect list. - [Fix] <Jojo> Speed and tempo values are now adjusted to what Scream Tracker actually expects (speed 1 - 254, tempo 33 - 255) - anything out of this range is ignored by Scream Tracker, so it is now also ignored by OpenMPT. - [Fix] <Jojo> Pattern breaks >= C40 are now ignored. - [Fix] <Jojo> Global volume commands > V40 are now ignored. - -Other formats - [Imp] <Jojo> Garbage characters in sample / instrument / song names should be gone now.. This should f.e. avoid sample names like " ntitled" turning up in modules after deleting sample names. - [Imp] <Jojo> Improved handling of the note cut effect in PTM (Polytracker) files a bit. - [Mod] <Jojo> Improved portamento import precision for DBM and ULT loaders (patch from Schism Tracker) - [Mod] <Jojo> Added a version check to the ITP loader (why was this not there in the first place?) - [Fix] <Jojo> As MTM files were converted to MOD automatically when being loaded, channel panning was lost. Now they're loaded as S3M instead. - [Fix] <Jojo> Short loops in AMF / MED files are now ignored (http://bugs.openmpt.org/view.php?id=70) - probably caused by bad MOD conversions, at least in the AMF example? - [Reg] <Jojo> Disabled the Velvet Studio loader for now, since it either crashes on almost all AMS files or at least imports them completely wrong. - -Misc - [New] <Jojo> WAV Export: Sample-exact cue points are now written at each pattern transition. - [New] <Jojo> Most MPT hacks in modules can now be found through View -> Find MPT Hacks in Song. - [Imp] <Jojo> Paths to VST plugins in mptrack.ini and plugin.cache are now also relative in portable mode. This means that finally, *all* stored paths are now relative in portable mode. - [Imp] <Jojo> Additional new keyboard shortcuts: Panic, View Edit History, Set Invalid / Ignore (--- / +++) Pattern (in the orderlist), plus the ones mentioned in above categories - [Imp] <Jojo> Some improvements were made to the Registry / INI reading: If there were no Registry settings because MPT 1.16 was previously not installed, the INI file is now also read as it might contain some lines created by the installer. - [Imp] <Jojo> Sound Setup: For ASIO devices, only supported sampling rates are now shown. - [Imp] <Jojo> The instrument list on the comments tab also shows assigned plugins now. - [Imp] <Jojo> Added Mix Paste (IT Style) to the "Paste Special" edit menu - [Imp] <Jojo> Macro Editor: User is now warned if the current macro configuration differs from the default configuration but embedding macro configuration is disabled. - [Mod] <Jojo> Changes to keymap file handling: The active keymap is now always saved to Keybindings.mkb (in either %APPDATA%\OpenMPT or the executable's directory). Any other keymaps are now only overwritten when using the "Save keys as" function. (http://bugs.openmpt.org/view.php?id=20) - [Mod] <Jojo> On first run, the default ASIO driver is now chosen instead of DirectSound (if there is one). - [Mod] <Jojo> The "Original" mix mode now also has a version number (1.16) to reflect what the "original" thing is. - [Mod] <Jojo> Updated genre list in the MP3 export dialog. - [Mod] <Jojo> When using the ACM MP3 codec, 320kbit/s bitrate should now be available. - [Mod] <Jojo> "No extra-loud samples" is now enabled by default (as it's more suitable for mixmodes RC3 and Original) - [Mod] <Jojo> The MMX acceleration label in the Soundcard setup dialog is now updated according to the multimedia extensions that are supported by the CPU (3DNow! / SSE) - [Mod] <Jojo> Updated unmo3.dll to version 2.4.0.1 - [Mod] <Jojo> Updated the internet link list in the Help menu. - [Fix] <Jojo> Mod Cleanup: Rearrange patterns was broken when using more than one sequence in the MPTM format. (tx Skaven) - [Fix] <Jojo> Mod Cleanup: Various sample / instrument rearranging functions broke PC Notes. - [Fix] <Jojo> The text length was calculated wrong in the message reader, leading to a possible buffer overflow when reading song messages with mixed line endings where CR or LF line endings were expected. - [Fix] <Jojo> When there was no INI file, the size of the upper pattern view was defaulting to a wrong value. - [Fix] <Jojo> The ID3v2 "comments" field was not formatted properly when exporting to MP3. - [Fix] <Jojo> unmo3.dll and uxtheme.dll (for theming the general tab) are now loaded "safely", to avoid the currently spreading DLL exploits. - [Fix] <Jojo> Editing a sample / instrument name on the comments tab didn't mark the module as modified (tx djmakas) - [Fix] <Jojo> When changing the font size of the song message while the comments tab is open, the message editor is now resized instantly. Previously, only the font size was updated. - [Reg] <Jojo> "Set highlights to songs' time signatures" is gone. Custom song highlighting is now always applied, and the values found in the colour options are now always applied to new modules. - - -v1.18.03.00 (August 2010, revision 673) ---------------------------------------- -General tab - [Imp] <Jojo> To prevent OpenMPT from hanging while switching between plugins (or switching to the general tab), the preset box is only filled when it gets the focus. This makes working with Synth1 a lot easier, since it has an insane amount of presets... :) - [Mod] <Jojo> Changed tab order of the lower panel (now it's more logical to me) - -Sequence editor - [Imp] <Jojo> When inserting patterns at an empty position, the position counter is not increased anymore. - [Imp] <Jojo> Improved sequence name display in context menu for empty sequences. - -Pattern tab::pattern editing - [Imp] <Jojo> Just like in MPT 1.16, it is now possible again to interpolate between an effect and "nothing". In that case, the same value as the already existing one is repeated between the two rows. - [Fix] <Jojo> When the first column of a pattern selection (larger than one selection field) was the parameter column, PC Note values in this column were not reset properly. - [Fix] <Jojo> Pattern Editor: Transposing notes up/down doesn't allow notes which are actually supported by the current module format (f.e. notes below C-1 in XMs) anymore. - [Fix] <Jojo> Keyboard shortcut for toggling record state didn't save the change, so it was reset with every new module. - -Pattern tab::Note properties - [Imp] <Jojo> Effect info now shows the real finetune values for E5x in MOD/XM and E2x in S3M instead of just 0...15. - [Imp] <Jojo> Set envelope position effect (Lxx in XM) is now explained better. - [Fix] <Jojo> Fixed a null pointer related crash when accessing the note properties of malicious and not-so-malicious modules (f.e. jt_pools.xm) which have more than 256 sample slots. - -Sample tab - [New] <Jojo> It's now also possible to create sample selections using Shift + click (this is still behaving a bit non-obvious if you don't know what you're doing :). - [New] <Jojo> Sample Drawing: Horizontal lines can now be drawn by holding down the shift key. - [Imp] <Jojo> Finetune range is now limited from -8 to 7 for MOD files. - [Imp] <Jojo> When hovering the relative note and finetune controls, the actual C-5 frequency is now also shown for MOD files. Previously, this only worked for XM files. - [Fix] <Jojo> When using the spin button next to the finetune or frequency control, the module was not marked as modified. - -Instrument tab - [New] <Jojo> Pressing Ctrl while dragging a point in the envelope editor now also moves the tail of the envelope. - [Imp] <Jojo> More helpful value display for the panning envelope in the status bar with indication what's left and what's right. - [Imp] <Jojo> If an instrument is not initialized yet, this is done automatically now, so that changes done to the instrument are not lost, although it looks like they are actually applied (f.e. when trying to edit a previously deleted instrument). - [Imp] <Jojo> Fadeout values up to 32767 are allowed again for XM files, as FT2 can actually handle them (and other apps like Milky support them as well) - [Imp] <Jojo> Panning ranges from 0 to 256 again for MPTM, and from 0 to 64 for IT files (previously, it ranged from 0 to 255). - [Imp] <Jojo> Sample Map accepts various new shortcuts now. - [Imp] <Jojo> When pasting an envelope with a release node, it's now ignored in formats that don't support it. - [Reg] <Jojo> Envelope release nodes cannot be enabled for IT files anymore, but they are still played for compatibility. (One has to start removing the crap from the old formats at some point...) - -Treeview - [Imp] <Jojo> Treeview: Ask for confirmation when deleting patterns, samples, instruments, sequences. - [Fix] <Jojo> Deleting a sample from the treeview and then applying undo for this sample in the sample editor crashed OpenMPT. - -Mod conversion - [Imp] <Jojo> Some improvements with converting note cuts, ECx/SCx and EDx/SDx. - [Imp] <Jojo> When converting to XM, rogue note delays are removed from the patterns to avoid interference with a FT2 bug. - [Imp] <Jojo> Envelope release nodes are now removed when converting from MPTM. - [Fix] <Jojo> When converting to MPTM, "+++" separator patterns are not recognized as sub tune indicators anymore, as that was quite annoying. - [Fix] <Jojo> Channel settings were not reset properly for MOD/XM/S3M, only the first channel was fixed. (tx Sam_Zen) - [Fix] <Jojo> Extra fine portamento was not converted properly when converting from IT/MPTM/S3M to XM. - -Playback (see also format-specific changes below) - [Mod] <Jojo> Invert loop (.MOD effect) is now ignored on 16-bit samples (only important during editing, since .MODs can only contain 8-bit samples anyway) - [Fix] <Jojo> The Pattern Loop command did not work properly on rows > 255 - -IT::Saving - [Imp] <Jojo> If a plugin is specified for an IT instrument and no MIDI channel is assigned, the plugin is written into the IT instrument header (in MPT 1.16's old manner), so that MPT 1.16 / XMPlay / BASS can make us of "FX Send" again. (tx Skaven) - [Imp] <Jojo> If filter envelopes are used, a different value for the cmwt ("compatible with") field is now used in compatibility export (like in SchismTracker). - [Fix] <Jojo> Instrument panning was not converted properly. - -XM - [Fix] <Jojo> Various fixes to the pattern loop command (E6x), including a crucial FT2 bug: When E60 is used on a pattern row x, the following pattern also starts from row x instead of the beginning of the pattern, unless there was a Dxx or Cxx effect. - [Fix] <Jojo> Prevent notes to be stopped after a fadeout. This way, a portamento effect can pick up a faded instrument which is long enough. This occours for example in the bassline (channel 11) of jt_burn.xm. Not tested with many XMs yet, I hope this won't break anything else... - -XM::Saving - [Imp] <Jojo> Panbrello is not saved anymore in compatibility mode. - [Fix] <Jojo> Completely empty patterns are loaded as empty 64-row patterns in FT2, regardless of their original size. This is now being circumvented by adding a D00 effect at the end of such patterns. - [Fix] <Jojo> Saving XM files with 127 channels (sigh) was broken. - -S3M - [Fix] <Jojo> Samples with very short loops (4 bytes) are now loaded properly. Fixes "a tiny problem.s3m" by \slash. - [Fix] <Jojo> Notes with an SD0 effect were not ignored properly when there was a row delay effect on the same row. Now they should be ignored in any case. - -Other formats - [Imp] <Jojo> Song messages are now loaded with more accuracy for some formats. - [Imp] <Jojo> J2B Loader: Files with extended instrument settings and multiple samples per instrument work properly now. Such J2B files were not used in the game but have been created by JJ2 players using MOD2J2B. - [Imp] <Jojo> OKT Loader: Completely new IFF-based loader, translated from SchismTracker code with permission from Storlek. This loader is a *lot* more accurate, but still misses a few pattern effects. - [Imp] <Jojo> PSM Loader: Small improvements. - [Fix] <Jojo> MTM Loader: The "beats per track" (means lines per pattern) setting is now taken into account. - [Fix] <Jojo> PSM16 Loader: Since the control channels were muted, tempo commands were ignored, effectively slowing down some PSM16 tracks. - [Fix] <re> MPTM Saver: When deleting patterns using the treeview, it was possible that Parameter Control Notes were not saved properly anymore. - -Misc - [New] <Jojo> Experimental "panic" button on the main toolbar. At the moment, it just kills all VSTi and sample voices. - [Imp] <Jojo> Added mnemonic codes to the wave export controls. - [Mod] <Jojo> In the mod type dialog, the "misc flags" can now be toggled using check buttons instead of an edit field. - [Mod] <Jojo> Various file loaders / savers: A new logging mechanism is used to display only one message box with errors and warnings instead of many message boxes. - [Mod] <Jojo> Updated DE_jojo.mkb to include new shortcuts, remapped a few others (for IT-style). - [Mod] <Jojo> Updated FR_mpt_(legovitch).mkb and NO_mpt_classic_(rakib).mkb (tx Paul Legovitch, Rakib). - [Fix] <Jojo> Colour Setup: Some colours in the MPT default colour scheme were not set up properly when switching between presets. - - -v1.18.02.00 (May 2010, revision 610) ------------------------------------- -General tab - [Imp] <Jojo> Disabled tempo slider for MOD files (it was just confusing) - [Imp] <Jojo> Disabled global volume slider for MOD files, instead enabled the sample pre-amp slider (so it is also possible to make output louder) - [Imp] <Jojo> The "output to" dropdown list also shows the actual plugin name now (instead of just the library name). - [Fix] <Jojo> Moving a plugin in MOD/S3M files doesn't mark them as modified anymore. The channel fx dropdown lists are now also disabled for those module types. - [Fix] <Jojo> The restart position edit control is disabled for S3M files. - [Fix] <coda> The background colour of the tabs in the channel configuration is now also correct when using WinXP Luna or Vista/Win7 Aero. - -Sequence editor - [New] <Jojo> "Select All" shortcut also works here now. - [Imp] <Jojo> The sequence menu also allows to insert empty sequences now. - [Fix] <Jojo> Jumping between patterns also stops VSTi notes now. - -Pattern tab::pattern editing - [New] <Jojo> Extended context menu for PC Notes - [New] <Jojo> Key shortcut + context menu entry for toggling the plugin editor of the PC Note that's under the cursor. - [Imp] <Jojo> Overflow paste now only uses one undo step. - [Imp] <Jojo> Instead of simply ignoring note off/cut/fade when working with .MOD files, it is converted to C00. - [Fix] <rewbs> Effect visualizer is now aware of PC Notes (http://forum.openmpt.org/index.php?topic=3836.0). - [Fix] <Jojo> When using MIDI record or split keyboard settings, volume data was written into the volume column in MOD format. - [Fix] <Jojo> When converting PC Notes to MIDI Macros, the instrument index is now also cleaned as well. Noticeable for example when pasting PC Notes into an IT module. - [Fix] <Jojo> Now, plugin slot 100 can also be automated using PC Notes. - [Fix] <Jojo> When pasting pattern data that exactly reached the pattern end with overflow paste enabled, a redundant undo point was created. - [Fix] <Jojo> Entered (volume) effects are now properly validated (makes a difference f.e. in MOD format where it was previously possible to enter effects like Hxx) - [Fix] <Jojo> Mix Paste: When in MPT behaviour mode, empty FX commands were not overwritten properly when there previously was an effect in that field but only the effect number (and not the param value) was reset. - [Fix] <Jojo> When deleting all patterns via the treeview and then switching to the pattern editor, pattern 0 is not created automatically anymore, to avoid confusion. - [Reg] <Jojo> Creating a selection using the Shift key + Mouse click now only works if there was previously no selection made; This seems reasonable as the old shift - behaviour seems to be widely used. - -Pattern tab::GUI - [New] <Jojo> When the PT1x mode or the S3M "Amiga" flag are enabled, dodgy notes (i.e lower than C-4 or higher than B-6) are marked red. - [Imp] <Jojo> The status bar shows plugin and parameter names for PC Notes now as well. - [Imp] <Jojo> Effect vis: Make use of song's own row highlighting variables instead of fixed global ones. - [Fix] <Jojo> The status bar ("Position x of y") only the showed order length for the first sub tune if sub tunes were separated by an "---" order item. - [Fix] <Jojo> Changing a channel plugin in MOD/S3M files doesn't mark them as modified anymore. - [Fix] <Jojo> When working with multiple sequences, switching to the pattern editor for the first time automatically marked the document as modified. - -Pattern tab::Note properties - [Imp] <Jojo> Don't allow values > 63 for "break to row" commands in MOD/S3M. - [Imp] <Jojo> Since the behaviour of sliding commands with both nibbles set varies from tracker to tracker, "undefined" is always shown in the note properties in such cases. - [Fix] <Jojo> In the note properties, the Gxx effect for XM files was not limited properly. - [Fix] <Jojo> In Note Properties, the waveform display for S[345]x (and equivalent MOD/XM effects) was not always fully visible ("continue" addition was cut off) - [Fix] <Jojo> Display "fine" / "extra fine" portamento effects properly (S3M/IT/MPTM), display SFx macro properly, display MOD effects with no memory properly. - -Pattern tab::Find/replace - [Fix] <Jojo> Find/Replace didn't work properly when replacing PC Notes with something that's not a PC Note. - [Fix] <Jojo> Instead of turning "Follow Song" off, the Find/Replace dialog toggled it. - -Sample tab - [New] <Jojo> Shift+New = Clone sample slot - [New] <Jojo> Option to not ask for RAW import settings again (settings are remembered independently for all modules) - [Imp] <Jojo> Remember previous settings in RAW import dialog - [Imp] <Jojo> When enabling (sustain) loop and no loop points are set yet, the loop is now set automatically to full sample length or the currently selected part of the sample. - [Imp] <Jojo> Sample name and filename length are now properly limited. - [Fix] <Jojo> When applying time stretch / pitch shift to an 8-bit sample and selecting the sample partly lead to partial upsampling, instead of upsampling the whole sample. - [Fix] <Jojo> Sample Undo: If no custom value was set, the default value was set ridiculously high (tx Paul Legovitch) - [Fix] <Jojo> Sample Undo: Fixed another possible problem when undoing actions with very little memory left. - [Fix] <Jojo> It was not possible to create the last sample slot (i.e. pressing "new sample" with a MOD file that had 30 samples would result in an error, although MOD supports 31 samples). - [Fix] <Jojo> When loading an extremely short raw file (f.e. 1 byte) twice, it crashed OpenMPT. - -Instrument tab - [New] <Jojo> Envelope zooming. Might still look very weird (especially the first tick and around loop points). Includes two new keyboard shortcuts. - [New] <Jojo> Transpose Up/Down for sample map. - [New] <Jojo> VST/Instrument handling: The IT instrument note mapping is now also applied to VST instruments (before, it was just available for samples). This way, VST instruments can be transposed easily. - [Imp] <Jojo> When pasting an envelope, it's now also automatically enabled. - [Imp] <Jojo> Instrument name and filename length are now properly limited. - [Imp] <Jojo> "Scale envelope points" is now also available for scaling the values of the points (y axis). - [Fix] <Jojo> The panning spin button ranged from 0 to 256, however when saving to .IT, 256 was wrapping over to 0. Panning is now limited from 0 to 255. - [Fix] <Jojo> It was impossible to assign plugin slot 100 to an instrument. - -Comments tab - [Fix] <Jojo> Correct C-5 frequency is now also shown for XM modules. - [Fix] <Jojo> When editing sample / instrument names, they are limited properly in length now. - -Treeview - [New] <Jojo> Sequences can now be copied to other modules by simply dragging the sequence header into the the other module's sequence header. Does only work between two different modules, not within the same module, and it will not copy the pattern contents. - [Imp] <Jojo> Display sequence index next to sequence names. - [Imp] <Jojo> Improved order dragging; It is now also possible to drag an order into a non-MPTM module. In that case, the old orderlist will be replaced. - [Imp] <Jojo> J2B files were not shown in the treeview. - [Fix] <Jojo> Soundfont samples were not playing correctly anymore. Note that soundfont samples in the MIDI library still don't work. - [Fix] <Jojo> A crash could occour if the instrument library path was too long (f.e. because of malicious strings in the [Paths] section of the INI file) - [Fix] <Jojo> "Bypass" action for VSTs didn't set the document as modified. - [Fix] <Jojo> Right-Click on module -> Close didn't ask for confirmation when the document was modified. - [Fix] <Jojo> Insert/Duplicate sequence actions didn't set the document modified. Grey out those two actions if no additional sequences can be added. - -VST - [New] <Jojo> VST/Instrument handling: The IT instrument note mapping is now also applied to VST instruments (before, it was just available for samples). This way, VST instruments can be transposed easily. - [Imp] <Jojo> VST Editor: Instead of just saying the user that the plugin has to be assigned to an instrument to play notes, they are queried now whether they want to automatically add an instrument. - [Imp] <Jojo> VST Editor: Added shortcuts for "toggle bypass", "pass keys to plug" and "record params to pattern" - [Mod] <Jojo> VST Editor: Changed number of patches per sub menu from 100 to 128. Now, one sub menu equals ones MIDI bank (more logical) - [Fix] <Jojo> VST Editor: Preset names starting with ' ' >= char > 'A' were cropped (i.e. "123ABC" was displayed as "ABC") - [Fix] <Jojo> VST Editor: Changing a plugin parameter in MOD/S3M files doesn't mark them as modified anymore. - [Fix] <Jojo> Even if an instrument was muted, a VSTi assigned to this instrument was still playing in the pattern. - [Fix] <re> Some VSTs that previously wouldn't load might now load fine. - [Fix] <re> Returned host CanDo-values were wrong (since pre-RC1 era). - -Mod conversion - [Fix] <Jojo> When converting from MOD to S3M or IT, the Invert Loop effect was not removed. - [Fix] <Jojo> When converting from MPTM to another format, the first sequence name is removed and the sequence is now sized properly when merging multiple sequences (tx Skaven). - [Fix] <Jojo> When converting between XM and IT, the sample autovibrato "sweep" factor is now fixed a bit (since sweep = 0 equals "no sweep" in XM, and "no vibrato" in IT). - [Fix] <Jojo> When removing instruments from the treeview and converting the module to a different format which also supports instruments, OpenMPT crashed. - [Fix] <Jojo> When converting to MOD/S3M, the extended filter range flag was not deactivated. - [Fix] <Jojo> S00 (IT/S3M) does not equal E00 (MOD/XM), as Exx doesn't have effect memory. Trying to convert S00 to the last used value now. - [Fix] <Jojo> If necessary (S3M), the restart position attribute is reset. - [Fix] <re> Merging multiple sequences didn't properly convert '---'/'+++' orders. - -IT - [Imp] <Jojo> IT Saver: Compatibility export saves stereo samples again, as other tracker like Schism also support this (and so do the official IT specs). - [Fix] <Jojo> IT Saver: Fixed IT sample flags which could potentially cause IT to screw up on loading/saving MPT-made modules with samples that are not used by an instrument. - [Fix] <Jojo> IT Loader: ChibiTracker uses a different newline characater for the comments text, which was not handled properly. - [Fix] <Jojo> (fix from SchismTracker) IT Loader: Ignore stereo sample flag when loading old IT files (older than IT 2.14) since Impulse Tracker did not reset this flag when importing stereo samples back then. - [Fix] <Jojo> ITI/ITS Loader: Sample flags were not reset when a sample slot was overwritten when loading ITI or ITS files. That way, it was possible that f.e. the bidi loop flag was not disabled when loading a new sample that had a normal loop. - [Fix] <Jojo> IT Compatibility: Note Cut really cuts notes and does not just mute them (so that following volume commands could restore the sample) - [Fix] <Jojo> IT Compatibility: Always reset autovibrato settings when there's an instrument number (fix from SchismTracker) - [Fix] <Jojo> IT Compatibility: S77 / S79/ S7B are supposed to pause the envelope, not disable it. - [Fix] <Jojo> IT Compatibility: ignore slide commands with both nibbles set (f.e. D55, PA1, ...) - [Fix] <Jojo> IT Compatibility: Default Vibrato/Tremolo/Panbrello waveform values to sine waveform if out of range (e.g. S35) - -IT/MPTM/ITP, Instrument extension handling: - [Fix] <re> Fixes to instrument envelope flag handling (broken in 1.18.00.00). - -XM - [Imp] <Jojo> XM Loader: Improved detection of an old version of MPT (1.09?). - [Fix] <Jojo> XM Loader: Some XMs not made with ModPlug were recognized as files made with MPT. - [Fix] <Jojo> XM Loader: The last XM instrument was not always loaded. - [Fix] <Jojo> XM Loader: Early versions of Skale Tracker (R.I.P.) apparently wrote malformed XM sample headers, so OpenMPT failed to load such modules. Such files should be loaded correctly now (fixes IFULOVE.XM by yeep). - [Fix] <Jojo> XM Compatibility: Volume column doesn't have an effect memory, most effects with param = 0 are useless. Those are ignored in compatibility mode playback and also when exporting the file in compatibility mode. - [Fix] <Jojo> XM Compatibility: Improved handling of the situation when a 3xx effect was used, but previously no note was playing. - [Fix] <Jojo> XM Compatibility: An instrument change next to a portamento event is now ignored (fixes partytime.xm by cancer) - -MOD - [Imp] <Jojo> Module creation: When creating a new .MOD, it has 31 sample slots by default. - [Imp] <Jojo> Playback: When the PT1x flag is activated, Amiga note range limits are automatically taken into account. - [Fix] <Jojo> MOD Saving: Samples were shifted badly if the sample size was odd. (wow, this is an OLD bug!) - [Fix] <Jojo> MOD Saving: If a sample had loop points set, but loop disabled, they were still saved in the .MOD file, resulting in the loop being enabled automatically. - [Fix] <Jojo> MOD Loader: Very short loops (4-8 bytes long) are not ignored anymore. This fixes "Crew Generation" by Necros. - -S3M - [Imp] <Jojo> S3M Loader: Display a message if an S3M file contains Adlib instruments (rare). - [Fix] <Jojo> S3M Playback: In ST3, muted channels are completely ignored, not even effects are interpreted. Let's try this in MPT, too. - [Fix] <Jojo> S3M Compatibility: Slightly better handling of vibrato/tremolo waveform types (although the ST3 help screen says that continuous vibrato/tremolo is possible, it does actually not work.) - [Reg] <Jojo> Cannot create S3M files with more than 100 patterns anymore, because... - [Fix] <Jojo> ... it was possible to create S3M files where the 256 parapointers were not enough, resulting in incomplete/broken files. - [Fix] <Jojo> S3M Compatibility: Note Cut really cuts notes and does not just mute them (so that following volume commands could restore the sample) - -MPTM - [New] <rewbs> Added combined note delay & note cut command for MPTM only (":xy" means delay until tick x and play for y ticks). - [New] <Jojo> MPTM command S7D explicitly enforces pitch envelope, S7E enforces filter envelope. - [Fix] <Jojo> MPTM Saving: A missing null pointer check crashed OpenMPT when trying to access a deleted instrument slot. - -Other formats - [Imp] <Jojo> MT2 Loader (MadTracker): Make use of the "lines per beat" header field. Release node is not set anymore for each and every instrument envelope. MT2 files are now loaded as IT files by default (instead of XM) because of their extended instrument properties (NNAs, filters, etc) - I wonder what this breaks, but I don't bother much because MT2 support was already 100% broken before this. :) Some MT example tunes sound a bit better now at least. - [Fix] <Jojo> PTM Loader: Fixed an unhandled null pointer exception that occured when loading some unsupported RAR files. - [Fix] <Jojo> PSM16 Loader: Fix for note cut on tick 0 (warbot tune from Silverball) - [Fix] <Jojo> Threw out the old ULT loader in favor of Storlek's loader from SchismTracker (used with permission from the author himself). This is a lot more accurate than MPT's old loader. - [Fix] <Jojo> DBM Loader: Various fixes to increase import precision and an endianness fix - [Fix] <Jojo> AMF DSM Loader: Made some changes to the pattern reader, which eliminate the strange "vC7" commands in the pattern. I have found no hints on whether my fix is correct or not, apart from the fact that those AMF files that I have play a lot better now. And it makes kind of sense... - [Fix] <Jojo> IMF Loader: Some fixes copied from Schism (copied from MikMod) - -Module cleanup - [Imp] <Jojo> In the cleanup dialog, mutually exclusive items are now automatically unchecked, to avoid confusion. - [Imp] <Jojo> Made the dialog look a bit nicer. - [Fix] <Jojo> Because of an error in pattern count retrieval, the last pattern was not checked when looking for unused samples which sometimes resulted in deleted samples (although they were actually used). - [Fix] <re> Fixed a memory leak in pattern name handling. - -Wave Export - [New] <Jojo> It is now also possible to render by instrument (i.e. one wave file per instrument). - [Imp] <Jojo> The "render by channel" mode ignores empty channels now. - [Imp] <Jojo> When switching to another task and switching back to OpenMPT, it is now less likely that the infamous "OpenMPT does not respond" dialog from Windows occours. - -Misc - [New] <Jojo> INI Settings: When portable mode is enabled, the most common paths in mptrack.ini are now translated to relative paths (if possible). Plugin paths are not translated to relative paths (yet). - [New] <Jojo> Modules in gzip archives (single-file .gz archives) can now be imported, just to satisfy my laziness when downloading gzipped modules from Amiga Music Preservation. :-P - [Imp] <Jojo> Mod Loaders: Instead of creating message boxes in various places, errors are now written to the log and one message box is shown for each file. - [Imp] <Jojo> Binary files are now less often falsely recognized as early MOD files (15 samples without header): If the orderlist contains orderlist items > 128, loading is canceled. - [Imp] <Jojo> Song Properties: Tool tips are shown for various controls. - [Mod] <Jojo> Options: Removed the "space bar repeats previous action" option, as it did not work anymore since the new keyhandler is used; in fact, this option can be achieved instead by using the "on key hold" for the "quick paste" key shortcut. - [Reg] <rewbs> Removed old "velocity" volume command, which was experimental and unused. - [Mod] <Jojo> Replaced default VU-meter colours for the MPT scheme by more pleasant colours that were already used for the other themes. - [Mod] <Jojo> Updated internet links (ModPlug Central Forums link is now a permalink) - [Fix] <Jojo> Multi window edit: When (un)muting a channel from the general tab in window 1, it was instantly shown in the pattern editor of window 2, but not vice versa. - [Fix] <Jojo> Channel Manager: When removing channels using the channel manager, their names were not cleared properly. - [Fix] <Jojo> Song Length Detection: *Much* more accurate song length detection! Doesn't get tricked by pattern jumps anymore, hehe. :) - [Fix] <Jojo/re> Instrument IO: Flags from old ITI/XI files should also be loaded correctly now (broken in 1.18.00.00) - [Fix] <Jojo> When using the "close file" shortcut several times in a row so that multiple message boxes popped up, it was possible to crash OpenMPT. - [Reg] <Jojo> Removed AutodetectITplaystyle option, since the tracker detection works reliably enough now. Tracker detection can not be ignored anymore now. - -Installer/release package - [New] <Jojo> Ladies and gentlemen... we finally have an installer. :) - [Mod] <Jojo> Added OpenMPT 1.18 release notes documents - [Mod] <Jojo> Updated DE_jojo.mkb - [Mod] <Jojo> Updated Paul Legovitch's keymap (now also suitable for desktop keyboards) - [Mod] <re> Updated default keybindings. - - -v1.18.00.00 (January 2010, revision 475) internal test build ------------------------------------------------------------- -General tab - [Fix] <Jojo> Channel name input field was not limited properly. - -Sequence editor - [New] <re> Can now copy/cut/paste order selections. - [Imp] <Jojo> Using the keyboard manager for shortcuts. 0...9, + and - keys are now also configurable. - [Imp] <Jojo> Duplicate / Create new pattern shortcuts do also work here now. - [Imp] <Jojo> Show cut/copy/paste orders in context menu. - [Imp] <Jojo> Middle click can now also be used for queuing patterns. - [Fix] <Jojo> Pasting orders now removes "+++" items if they are not supported by the current format. - [Fix] <Jojo> Fixed display error when selecting multiple orders, inserting them and clicking on another order (only first order of previous selection was un-highlighted). - -Pattern tab::Pattern editing - [New] <Jojo> New paste mode "push forward paste", which resembles the default paste behaviour of Impulse Tracker. Includes new shortcut. - [New] <Jojo> New paste mode "paste flood" pastes the clipboard content again and again until it hits the bottom of the pattern (overflow paste will be disabled automatically if paste flood is used, for obvious reasons). - [Imp] <Jojo> When using the MPTM format, plugin param changes are written to the pattern as PC Notes (instead of smooth midi macros). - [Imp] <Jojo> Assume that the clipboard pattern format is IT (instead of MOD) if no information about the format is available. - [Imp] <Jojo> Pattern c&p: convert pasted commands if necessary. - [Mod] <re> Pattern c&p: Mix paste shouldn't anymore trigger conversion on modcommands that weren't changed at all. Now, however, partial conversion will not be done so this still needs further fixing. - [Fix] <Jojo> Pattern c&p: invalid commands are not pasted anymore. - [Imp] <Jojo> If "record note off" is enabled and Note Off commands are not supported by the current format, try Note Cut and volume commands. - [Mod] <Jojo> It is impossible to enter something into the volume column in MOD format now. - [Mod] <Jojo> When interpolating PC Notes, the plugin number and note type won't get overridden if the note type is already PC or PCs. - [Fix] <re> Pattern c&p: Mix paste should behave better with parameter control notes. - [Fix] <... [truncated message content] |