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 Developers: nick name / real name [email @openmpt.org] Relabs / Ahti Leppänen [relabs] Ericus / Eric Chavanon [ericus] manx / Joern Heusipp [manx] Saga Musix / Johannes Schultz [sagamusix] rewbs / Robin Fernandes [rewbs] pelya / Sergiy Pylypenko [pelya] plastik_s / Trevor Nunes [plastik_s] Patch submitters: kode54 / Chris Moeller xaimus / Imran Hameed coda / Ken Snyder v1.22.02.00 (20 April 2013, revision 1917) ------------------------------------------ Instrument tab [Mod] When importing DLS drum samples into an XM instrument, pick the center of the sample's assigned note range as a transpose amount instead of the lowest note of the note range (http://bugs.openmpt.org/view.php?id=376). VST / DMO Plugins [Imp] If a plugin editor is focussed, MIDI is now always routed to that plugin. [Mod] effBeginSetProgram and effEndSetProgram opcodes are sent when performing a program change. [Fix] audioMasterGetPreviousPlug / audioMasterGetNextPlug opcodes were not doing anything that made sense. VST::Specific Plugin Fixes [Fix] OpenMPT could possibly freeze when starting WASAPI output of a module that uses the Sytrus plugin (and possibly other plugins). IT::Compatible Playback Mode [Fix] Fixed a rather rare envelope carry bug introduced in OpenMPT 1.22.01.00. [Fix] Instrument numbers higher than the last instrument act like empty instruments. MOD::Loading and Saving [Imp] SoundTracker Loader: Made file rejection heuristics a bit more strict. [Fix] SoundTracker Loader: Fixed possible division by zero. [Fix] Saving: Maximum sample length was off by a few bytes. [Fix] Saving: It was still possible for samples to misalign if the saved sample was originally larger than 128 KiB and had an odd sample count. Other formats [Fix] PSM16 loader: Master volume was not loaded properly. Misc [New] Added global, always active VU meter in the main toolbar. [Imp] MIDI CC shortcuts should now work in pretty much all places. [Imp] Boosting of audio thread priority can now be disabled in the Sound Card settings. On Windows Vista and later, MMCSS is now used for boosting. [Imp] When changing MIDI input devices, the change is applied instantly. Previously the old MIDI device was kept open. [Imp] Support for exclusive device access has been added for WASAPI devices. [Mod] Renamed "Use secondary buffers" option to the negated form "Use primary buffer". [Mod] Instrument previews in the tree view are now played at 0dB. [Fix] Fixed a possible crash when stopping a Wave Out device and possible freezes with ASIO / WASAPI devices. [Fix] Time display was not updated anymore in OpenMPT 1.22.01.00 when jumping around in the order list without actually playing the module. [Fix] Options dialog: Pre-amp warning was also shown when changing stereo separation. v1.22.01.00 (6 April 2013, revision 1749) ----------------------------------------- Pattern tab [New] Can now copy multiple patterns at once (http://forum.openmpt.org/index.php?topic=3706.0). [New] Added the Pattern Clipboard Manager to use more than one internal clipboard (http://bugs.openmpt.org/view.php?id=41). [New] Chord Editor: Added the possibility to make chords relative to a note entered in the pattern instead of a fixed base note (http://bugs.openmpt.org/view.php?id=360). [New] Added shortcut to find nearest instrument number in a channel (tx coda). [New] Added shortcuts to toggle PC keyboard / MIDI record note off (http://bugs.openmpt.org/view.php?id=326). [New] Added shortcuts: Select Row, Select Event (http://forum.openmpt.org/index.php?topic=3247.0). [New] Added hidden setting "RowDisplayOffset" in [Pattern Editor] to specify displayed row offset in the pattern editor (does not affect Goto dialog or pattern effects). [Imp] Added fake grace note support for record quantization: If there's already a note on the quantized row, move one row downwards. [Imp] Chord mode does now also work if no record channels are selected. [Imp] "Record Note Off" also works with chords now. [Imp] Higher live record precision. [Mod] Play Whole Row While Recording is now also applied to Quick Paste and Clear+Step commands (tx coda). [Fix] Play Whole Row While Recording didn't work properly when Row Spacing was set to a value other than 0. Note stops didn't work, either (tx coda). [Fix] Pattern display no longer lags with high Wave Out latency values. [Fix] When entering a chord, notes played via instrument plugins were not stopped on key-up. [Fix] Setting channel panning from Quick Channel Settings dialog didn't reset the surround flag live. [Fix] When inputting MIDI notes > B-9, they are now stopped properly on key-up (tx Knoeki). [Reg] Removed possibility to copy parts of the order list in favour of the new multi-pattern copying. Pattern tab::Find/Replace [Imp] Replacing has been sped up significantly, especially with large modules (http://bugs.openmpt.org/view.php?id=334). Sample tab [New] Can now import MPEG samples (MP1 / MP2 / MP3, requires mpg123). [Imp] ITI files can now also be read as samples (only reads the first sample, naturally). [Imp] Sustain loop preview is now updated instantly (http://bugs.openmpt.org/view.php?id=108). [Mod] 8-Bit/Mono conversion items are now also shown in the context menu if a selection has been made. [Fix] Memory was leaked when loading a sample into an empty sample slot and undoing that action. [Fix] Inserting samples did not clear previously existing sample names since some time ago. [Fix] The sample filename wasn't imported properly when loading a FLAC sample with RIFF chunks. [Fix] Selection length display didn't show the correct in length in seconds for long samples. Instrument tab [Imp] Mouse wheel and middle mouse button can be used in Sample Map (http://bugs.openmpt.org/view.php?id=345). [Imp] Next / Previous Instrument shortcuts and the tab key also work on the sample map now (tx coda). [Imp] Revised sample slot allocation behaviour when loading sample files as instruments. [Mod] Filter mode is now disabled for IT modules (defaults to "Channel default"). [Fix] After cleaning up instruments, inserting a new instrument would reveal the old (deleted) samples. Tree view [New] Some items (order list, pattern / sequence / sample / instrument names) can now be edited directly from the tree view. [Imp] Previewing instruments does not open the audio device for every new preview anymore. Previewing the same file multiple times in a row no longer reloads it from disk everytime. [Imp] It is now possible to switch between the upper and lower part of the tree view by pressing the Tab key (http://bugs.openmpt.org/view.php?id=101). [Imp] Soundfont instruments can now also be previewed for other notes than middle-C. [Imp] Pause / Stop playback keyboard shortcuts also work when no module is loaded (to stop preview in tree view). [Imp] Navigating with keyboard (e.g. using alphanumeric keys in the instrument browser) should work much better now. [Fix] Previewing instruments only worked about every other time. Mod Conversion [Imp] Volume column a/b/c/d slide memory is now fixed when converting to MOD / XM / S3M. [Imp] 000 (arpeggio with no parameters) commands are now removed when converting from MOD / XM to other formats. [Fix] When resizing small patterns to 64 rows for MOD / S3M, the pattern break command was inserted on the new last row (63) instead of the original last row. VST / DMO Plugins [New] Can now load and save FXB (plugin preset bank) files. [New] Can now copy & paste current preset in the plugin editor. [New] Added an option in the plugin editor to route a plugin's MIDI output to the pattern / sample / instrument editor. [Imp] If no default directory for presets is specified, the plugin's directory is suggested in the load / save dialog by default. [Imp] Current program name is now suggested when saving FXP files. [Imp] Better preset list creation for plugins that don't support retrieval of indexed program names (such as VOPM). [Imp] Plugin Selection Dialog: Selecting "no plugin" no longer makes OpenMPT forget the last used plugin. [Imp] Offline rendering state is sent to plugins that request it. [Fix] The preset menu is now updated correctly if the plugin requests a GUI update (e.g. internal bank switching). Playback [Imp] Instrument envelopes are now also evaluated if no sample, but a MIDI channel is assigned to the instrument - great for automating plugins using envelopes and macros. [Imp] Retrigger note also works with instrument plugins on rows without a note, and also with Cxx volume commands in XM (not that it really matters, anyway...). [Mod] In quad surround mode, the surround channel settings overwrites the reverb channel setting now (previously, it was the other way around). [Fix] Fixed problem where one had to press the play button twice after stopping playback (http://bugs.openmpt.org/view.php?id=325). [Fix] A crash could occour when using reverb with a mixing frequency higher than 50 KHz (http://bugs.openmpt.org/view.php?id=329). IT / MPTM [New] Experimental support for saving IT-compressed samples. To enable, set the ITCompressionMono=x and/or ITCompressionStereo=x (x is a sum of the following possible values: 1 = normal IT; 2 = Compatibility Export IT; 4 = MPTM) in mptrack.ini's [Misc] section; set ITCompressionVerification=1 to verify if samples are compressed correctly. Compressed stereo samples won't load in older versions of OpenMPT, and compressed samples will cause trouble when reading extended song or instrument properties in old versions, so be careful if you want to be backwards-compatible. IT::Compatible Playback Mode [Imp] Slightly changed arpeggio tick processing to be more accurate with pattern delays. [Fix] Retrigger note (Qxy) was broken for instrument plugins in IT compatible mode since OpenMPT 1.20.01.00 (tx Nahkranoth). [Fix] There is no unified effect memory between the volume column effects, and the volume slide commands there also don't share their effect memory with the effect column slides. [Fix] Envelope reset should now work correctly (http://bugs.openmpt.org/view.php?id=330). [Fix] pxx should also reset the surround flag, like all other panning commands. [Fix] SCx shouldn't "click" anymore (just like normal note cuts). [Fix] Various fixes regarding portamento between different samples, and especially portamento in multisample instruments. XM::Compatible Playbay Mode [Fix] Reverted envelope handling changes made in OpenMPT 1.20.01.00 to fix gh-kott.xm. XM::Loading [Mod] Less false positives when trying to detect old versions of MPT. S3M [Fix] SCx shouldn't "click" anymore (just like normal note cuts). S3M::Loading and Saving [Imp] Added support for loading SAx panning (as found in PANIC.S3M, automatically translated to S8x panning). [Mod] The channel order is now written in a L1 L2 L3... R1 R2 R3... scheme, instead of L1 R1 L2 R2 L3 R3..., so that channels are evaluated in the same order in ST3 and OpenMPT (ST3 first evaluates "left" channels, then "right" channels - note that this change does not affect the actual panning, though). MOD [Imp] Vibrato and Tremolo are not applied on first tick anymore in ProTracker 1.x mode. [Imp] Added ProTracker arpeggio wrap-around emulation in ProTracker 1.x mode (fixes the snare sound in doh's "Jim is dead"). [Fix] In ProTracker 1.x mode, the frequency range is now limited properly by taking the sample's finetune setting into account. MOD::Loading and Saving [Imp] Drastically improved support for 15-sample (Ultimate Soundtracker and clones) modules. For example, original Ultimate Soundtracker effects are now handled much better (e.g. in sll7.mod). [Mod] Sample pre-amp volume is based on the number of channels, to have the highest possible sample pre-amp without clipping. [Mod] Changed heuristic ProTracker 1.x detection: If there are more than four sample swaps between two notes, ProTracker 1.x mode is enabled (previously it was just 16 sample swaps per pattern). This fixes e.g. hoisaga1.mod by Ramon. [Mod] Can now create MODs with up to 99 channels. Other formats [Imp] WAV Loader: Loops that only cover the first sample point are ignored during import now. [Imp] ITP Saver: If an instrument cannot be saved, a warning is shown. [Fix] PAT Loader: Sample frequency was not imported correctly since OpenMPT 1.20.02.00. [Fix] MTM Loader: Files with only one pattern were rejected (tx ant1). [Fix] Tenative fix for some DLS sounds not loading correctly (http://bugs.openmpt.org/view.php?id=331). Module cleanup [Mod] "Reset variables" also resets channel settings now. [Fix] After rearranging samples, some bogus sample slots became visible again when adding a new sample afterwards. Misc [New] Added support for WASAPI output devices. [New] Added keyboard shortcut: Play song from start of pattern (same as play pattern from start, but doesn't loop the pattern). [New] Add hidden setting "ShowSplashScreen" in [Display]. [Imp] Elapsed time display in the status bar is a lot more accurate now (no more rounding errors that pile up over time). [Imp] Exclusive file reading rights are no longer requested, so it is now possible to open files that are being read by other applications at the same time (http://bugs.openmpt.org/view.php?id=352). [Imp] Editing sample / instrument names on the comments page limits the name length during input instead of just trimming long strings afterwards. [Imp] When clicking the "MIDI Record" button and the device is not ready, opening the device is now tried again after the popup settings dialog is closed. [Imp] Reduced memory usage. [Mod] Options Dialog: Changed "Buffer Length" value into "Latency" (real audio latency) and "Update Interval" (for GUI updates). Old buffer length settings are automatically converted to the new quantities. [Mod] Improved extension detection when reading files from zip files. When no preferred file extension is found, the biggest file in the archive is now preferred. [Mod] Changed default song name to be empty instead of "untitled". [Fix] Reported ASIO latency was slightly off, so that pattern playback syncing might have been a little off (not very noticeable since ASIO has very low latencies anyway). [Reg] Removed poorly implemented Invert Stereo option. It's not 1995 anymore. Bundled plugins [Imp] The MIDI Input / Output Plugin now stores device names in presets / modules, so that the order of MIDI devices is no longer important (when having e.g. more than one USB to MIDI interface, their device IDs might change depending on which one was plugged in first). [Fix] The MIDI Input / Output plugin could crash when changing devices while MIDI data was being processed. v1.21.01.00 (22 December 2012, revision 1472) --------------------------------------------- Pattern tab [New] Added option to quantize notes that are recorded live (select from context menu or shortcut). [New] Added "Data Entry" shortcuts to increase or decrease the value of the currently selected pattern cells (note, instrument, effect parameters), either by +/- 1 or by a coarse value depending on the column. [Imp] If no selection has been made, interpolation shortcuts now interpolate between the nearest notes / instruments / commands above and below the cursor position. [Imp] Added shortcuts for Record Select / Split Record Select (tx DJBouche). [Fix] Resizing a pattern only created an undo point when the pattern was reduced. [Fix] Set Instrument also works if "No Instrument" is chosen (http://forum.openmpt.org/index.php?topic=4178.0). [Fix] Non-existing patterns above the highest existing pattern are not displayed as "???" in the order list anymore. Sample tab [New] Can now load and save FLAC samples. [New] Added new stereo to mono sample conversion modes: Keep only left / right channel, split stereo sample into two mono samples. [Imp] Added shortcuts for "Zoom into Selection" (http://forum.openmpt.org/index.php?topic=4877.0), 8-bit and mono conversion. [Imp] When triggering a note, the note frequency is displayed next to the note name in the status bar. [Imp] It is now possible to drag and drop multiple samples from explorer. [Imp] When saving a sample, the actual sample name is now suggested if no sample filename is specified in IT / S3M / MPTM modules. [Imp] Added hidden INI setting "DefaultFormat" in the [Sample Editor] section to specify the default format to use when saving samples (possible values: wav, flac, raw). [Imp] Added hidden INI setting "FLACCompressionLevel" in the [Sample Editor] section to set the compression level (0...8) when saving FLAC samples. [Fix] Reducing the size of the sample undo buffer could sometimes lead to freezes (http://bugs.openmpt.org/view.php?id=314). [Fix] Fixed a possible crash when creating undo points (e.g. when using loop crossfade with an invalid crossfade length). [Fix] Saved WAV files should now finally have a correct file size in the header. Instrument tab [Imp] Moving the envelope tail (using Ctrl + Drag) also works properly if the distance between the moved point and the following point is small. [Imp] It is now possible to drag and drop multiple instruments from explorer. [Imp] Dragging the mouse over the sample map doesn't invert every note's assignment but applies the same action to all notes now (http://bugs.openmpt.org/view.php?id=244). [Fix] Importing DLS / SF2 samples into the sample editor does now properly remove sample attributes not supported by the current format. Tree view [Fix] Rearrange samples / instruments was really buggy. MIDI Macros [Fix] MIDI Macro letters u and v also take global / channel / instrument volume into account. [Fix] Zxx is now only applied on first tick (like in Impulse tracker), before any other effects, \xx remains "sane" and is applied on every tick. VST / DMO Plugins [Imp] The Preset menu in the plugin editor is now filled on demand (when clicking it for the first time) to keep the GUI responsive when opening the editor of plugins that have many presets. [Fix] Changing the preset from the plugin editor didn't mark the module as modified (http://bugs.openmpt.org/view.php?id=317). Playback [Fix] Reverse pattern loops that are obfuscated through pattern jump commands should now also work correctly when "Loop Song" is off and during Wave Export (http://bugs.openmpt.org/view.php?id=311). XM::Compatible Playback Mode [Fix] Volume column lxx / rxx doesn't overwrite the effect memory of Pxy anymore. XM::Loading and Saving [Fix] Importing patterns >= 240 didn't work in OpenMPT 1.20.04.00 (http://bugs.openmpt.org/view.php?id=308). [Fix] XM instrument saving failed in all versions of OpenMPT 1.20 if there were samples in the sample map that were only referenced below C-1 or above B-8 (http://bugs.openmpt.org/view.php?id=324). S3M [Fix] Pattern loops on muted S3M channels were still being processed. Misc [Imp] Added possible fix for some SF2 inaccuracies (tx BeRo). [Imp] Added basic support for DLS Level 2 regions (they are just treated like DLS Level 1 regions). [Fix] Fixed crash when loading some DLS samples. [Fix] Fixed possible integer overflow when reading song messages from files. [Fix] Song length detection won't affect actually stored high offset parameter anymore. v1.20.04.00 (27 October 2012, revision 1398) -------------------------------------------- General tab [Fix] Input boxes in general tab didn't allow for horizontal scrolling. Pattern tab [New] Can now also transpose by arbitrary amounts. Select from context menu or shortcut. Sample tab [Fix] Unsupported types of WAV files (e.g. MP3-compressed WAV) won't crash the program anymore. [Fix] Loading XI files as samples could lead to a crash (tx Lucas). [Fix] Mass sample export file names were sometimes not sanitized correctly (http://bugs.openmpt.org/view.php?id=300). Tree view [New] It is now possible to rearrange (drag and drop), insert and duplicate (through the context menu) samples and instruments. VST / DMO Plugins [Fix] Plugin Selection Dialog: Adding new plugins didn't focus them as intended. [Fix] Plugin Editor: Bypassing a plugin from its editor didn't mark the module as modified. VST::Specific Plugin Fixes [Fix] EZDrummer didn't load its samples until playback was started since OpenMPT 1.20.01.00, for the same reason as the Korg plugins which stopped working (tx coda). XM::Compatible Playback Mode [Fix] Improved XM tremor effect compatibility. XM::Loading and Saving [Imp] Full tempo range (32 - 512) is now also supported for the default tempo in compatibility export, as Fasttracker 2 actually "supports" this (not through the GUI, but it won't sanitize such values in files) and XMPlay also does. [Imp] Improved detection of files made with MPT. MOD [Fix] Partly undid Set Finetune changes from OpenMPT 1.20.02.00 (fixes The Wanderer II by Jogeir) Other formats [Fix] ITP Saver: ITP files saved with OpenMPT 1.20.03.00 were corrupted. Files saved with this version can be fixed by writing the byte sequence 10 00 02 (hex) at position $2B (instead of 01 00 00). Misc [New] Added hidden INI setting ASIOBaseChannel in [Sound Settings] category to specify the first ASIO channel to use for sound output (as a quick and dirty semi-solution for http://bugs.openmpt.org/view.php?id=128). [Imp] Using the mouse wheel to scroll edit controls with spin buttons works on all such controls now (http://bugs.openmpt.org/view.php?id=99). [Mod] Changed default resampling type to XMMS-ModPlug. [Fix] Wave Export file names were sometimes not sanitized correctly (http://bugs.openmpt.org/view.php?id=300). [Fix] Installer shouldn't overwrite key settings files anymore. v1.20.03.00 (22 September 2012, revision 1359) ---------------------------------------------- Pattern tab [New] Playback can now be locked to an order range. The range can be specified from the context menu of an order selection. Locked orders are then shown with a different background colour. [Imp] For visual guidance during editing, non-existing pattern numbers are now greyed out. [Imp] Added a keyboard shortcut for opening the Quick Channel Settings dialog. [Mod] Entering note-offs via MIDI doesn't put an instrument number next to them anymore. [Fix] Cursor doesn't exceed the pattern anymore when moving it beyond the right border. [Fix] When opening the pattern tab for the first time, the order list should not be scrolled randomly anymore if not necessary. Pattern tab::Quick Channel Settings Dialog [New] Added freely assignable keyboard shortcuts for switching between channels and returning to the pattern editor. [Imp] The dialog is now always hidden when changing focus to another window, not only when switching back to the lower part of the pattern view. [Fix] Tab order is now correct. Sample tab [Fix] 8SVX Loader: Loops are now also loaded properly if the loop end is precisely at the sample end. Instrument tab [New] "Pitch Bend Range": For instrument plugins, enter the instrument's Pitch Wheel Depth into this box and OpenMPT will now automatically adjust portamento / vibrato commands for this instrument plugin so that they behave identical to sample portamento / vibrato. [Imp] Sustain / Loop points cannot be enabled anymore if there is no evelope. [Mod] Velocity handling option has been turned into a checkbox (should be easier to grasp). [Fix] Loading AIFF files as instruments (or previewing them from the tree view) works now. VST / DMO Plugins [New] Plugins can now also receive tracker portamento (Hxx / 4xx and the like). Vibrato is emulated through pitch wheel messages; the behaviour is identical to sample vibrato if the plugin's actual Pitch Wheel Depth is set up correctly in the instrument tab. [Imp] Portamento Up / Down effects are now implemented properly: Memory and fine slides do finally work. (Fine and extra fine slides are currently not supported in the XM format, but you should not use plugins in that format anyway!). The behaviour is now also identical to sample portamento if the plugin's actual Pitch Wheel Depth is set up correctly in the instrument tab. For existing songs, a new option has been added to the Song Properties to retain the old behaviour. [Fix] Randomize Parameters reset focus to main window instead of plugin window (http://bugs.openmpt.org/view.php?id=294) [Fix] Randomize Parameters doesn't ask the plugin if a parameter is automatable anymore, as some plugins do not seem to set this property at all. [Fix] OpenMPT didn't write more than 255 plugins to the settings file since version 1.20 (http://bugs.openmpt.org/view.php?id=267) [Fix] A memory leak that occoured when trying to register invalid or missing plugins (e.g. on startup) has been fixed. IT::Compatible Playback Mode [Fix] A channel's key-off status is kept with portamento notes if "Compatible Gxx" is disabled or there is no instrument number next to the new note. IT::Loading [Fix] Overly long (26 characters) sample / instrument name strings found in IT files made with older versions of MPT are now read correctly again. [Fix] Silent samples were sometimes loaded into sample slots that were actually supposed to be empty. XM [Fix] All fine slide commands (E1x, E2x, EAx, EBx, X1x, X2x) are supposed to have their own memory. Previously, it was shared between some of the commands. XM::Compatible Playback Mode [Fix] Notes next to note delays are now ignored if the delay is greater than the current speed (*ignoring* any pattern delays). Previously this was only ignored if the delay was greater than the speed *including* pattern delays. XM::Loading and Saving [Imp] When loading an XM file made with an older version of OpenMPT, gxx / 3xx combinations in the same pattern cell are now tried to be upgraded to fit the new behaviour of OpenMPT 1.20.02.00. [Fix] Compatibility export broke X1x and X2x (extra-fine portamento) commands. MOD [Fix] Dxx effects that are to the left of a Bxx effect are now ignored (like in the XM format). [Fix] Loading 15-sample MODs only worked under lucky circumstances (most likely since OpenMPT 1.20.01.00). Other formats [Imp] 669 Loader: Effects are now imported more accurately. [Imp] DMF Loader: Improved effect import to fit more effects into a pattern cell. [Fix] AMF (DSMI) Loader: Fixed pattern effects (normal volume slides were always loaded as volume slide + vibrato) and some other bugs; More AMF format revisions (8-14) are supported now. [Fix] AMF (ASYLUM) Loader: Transposed samples will now play correctly, default speed / tempo are not ignored anymore. Misc [New] Wave Export: Added option to loop a song a given number of times during export (http://bugs.openmpt.org/view.php?id=221). [Imp] Keyboard Settings: Searching for shortcuts does now also work with MIDI CCs. [Mod] Since the DirectSound driver seems to be buggy (see various reports on the issue tracker), OpenMPT defaults to WaveOut now if there's no ASIO driver present. [Fix] Save All / Save None buttons in the Unsaved Files dialog didn't work if there was only one unsaved file (http://bugs.openmpt.org/view.php?id=206). [Fix] A known file extension shouldn't suggest a wrong file extension in the WAV / MP3 export dialog anymore (http://bugs.openmpt.org/view.php?id=298). v1.20.02.00 (7 July 2012, revision 1318) ---------------------------------------- Pattern tab [New] Middle-clicking or Ctrl-right-clicking a channel header shows the Quick Channel Settings dialog, where channel name, volume and panning settings can be quickly set up. [Imp] After selecting a column through a double click, it is possible to extend this selection to other channels by keeping the mouse button down after the second click (http://bugs.openmpt.org/view.php?id=245). [Mod] Order list display is now "blanked" after maximum supported length instead of internal size. [Mod] Interpolation and transpose context menu items have been moved to sub menus. [Fix] Shift-Click behaviour was inconsistent if a selection has already been made (http://bugs.openmpt.org/view.php?id=249). [Fix] An order list beginning with a separator and a stop pattern won't hang the tracker anymore (http://bugs.openmpt.org/view.php?id=255). [Fix] Moving channels through Drag&Drop didn't update the channel names properly. [Fix] Pressing and releasing superflous modifier keys made some pattern selection shortcuts get stuck. [Reg] Removed the "Rename Channel" context menu entry in favour of the new Quick Channel Settings. Sample tab [Imp] Improved AIFF support (added support for loop points, up to 32-Bit sample resolution, AIFF-C files and little-endian sample data). [Imp] Added support for arbitrary bit resolutions between 1 and 32 bits in WAV files (e.g. 20-Bit sample data). [Imp] If zooming the current selection is impossible, the zoom context menu item is greyed out. [Fix] Shouldn't crash anymore when cleaning up Undo memory (http://bugs.openmpt.org/view.php?id=232). Instrument tab [Mod] When right-clicking an envelope point, "Insert Point" will now insert the new point a tick to the right instead of inserting no point at all. Mod Conversion [Mod] When converting to XM, pattern breaks for fixing the FT2 E6x bug are now only inserted when necessary. VST / DMO Plugins [Imp] Plugin selection dialog makes use of plugin categories (as reported by the plugins) now. [Imp] The current playback position is now also reported correctly to plugins when jumping around in the order list (Previously, it was always reset to the song start). VST::Specific Plugin Fixes [Fix] The Korg Wavestation GUI did not work until song was played for the first time since OpenMPT 1.20. This also fixes the GUI of older versions of the Korg M1 plugin. Playback [Fix] Fixed frequency slide inaccuracies (tx BeRo). [Fix] Removed portamento speed A01 "fix". At speed 1, use fine pitch slides instead of normal ones (they behave identically to what OpenMPT did previously at speed 1). IT [Reg] Random filter variation settings are not supported anymore when editing IT files. Please use the MPTM format instead. Importing old files with random filter settings does still work. IT::Compatible Playback Mode [Fix] Combinations of Qxy (retrigger) with a pattern delay at Speed y should now work as intended. [Fix] Combinations of SDx with x greater than the current speed combined with tick delay commands didn't work. IT::Loading [Fix] Loading IT files made with older versions of OpenMPT replaces SC0 with ^^ instead of v00 now. XM [Fix] Set Finetune (E5x) should now work as in Fasttracker 2. [Fix] Volume column command gxx did not have memory (tx coda). Combinations of gxx and Gxx in the same pattern cell work correctly now. XM::Compatible Playback Mode [Fix] Tremor (Txy) behaves more like in Fasttracker 2 now. [Fix] Volume column command l00 sets the panning to full left on every tick but the first. S3M::Loading [Fix] Empty patterns were not loaded correctly. MOD [Fix] Set Finetune (E5x) should now behave more like in ProTracker. Other formats [New] AMS (Velvet Studio) support is finally back (not crashing the tracker this time :). AMS (Extreme's Tracker) support has been improved as well. [Imp] WAV Loader also imports loop points when reading a WAV file as a module. [Imp] STM Loader imports some effects more correctly now. [Imp] UMX Loader checks for a few more contained module formats that are also supported by Galaxy Sound System (STM, 669, FAR). [Fix] MDL Loader was severely broken in OpenMPT 1.20.01.00. [Fix] MED Loader: Sample transpose should work as intended (at least for MMD1 modules), MMD2 order list works again as well, Tempo vs Speed precedence for value 32 should be correct now. Misc [New] Keyboard Settings: Shortcuts can now also be found by pressing the sought-after key combination. Click search field to reset filter. [Fix] F1 was accidentally hardcoded to opening the help file (tx Diamond). [Fix] Song Length Estimation also takes per-pattern time signatures into account now. Bundled plugins [Fix] When using more than one instance of the MIDI Input / Output plugin at a time, killing one plugin instance killed all other instances as well. [Fix] The MIDI Input / Output plugin could sometimes send garbage data. v1.20.01.00 (5 May 2012, revision 1263) --------------------------------------- General tab [Imp] Like the plugin preset box, the plugin parameter selection box is now only populated when it is focussed, to avoid delays with plugins that have tons of parameters. [Imp] Default global volume display is now limited to 0...64 (instead of 0...128) for S3M (http://forum.openmpt.org/index.php?topic=4658.0). [Mod] Default global volume is not available anymore in the XM format, since it is not supported by the original format. [Fix] Switching between plugin presets didn't update the plugin parameter display. [Fix] When enabling surround for a channel, panning was not reset properly for playing tracks. Pattern tab [New] Added an option to select a whole channel when double-clicking a pattern cell (tx ko0x). [New] Added an option to display the default volume setting of a sample in the volume column if it is empty (obviously inspired by Impulse Tracker). [New] It is now possible to record incoming MIDI aftertouch messages to patterns using volume commands or MIDI Macros (http://bugs.openmpt.org/view.php?id=195). [New] New shortcuts: Increase / Decrease Row Spacing (http://bugs.openmpt.org/view.php?id=181). [Imp] Adding / removing channels through the pattern editor now creates an undo point instead of clearing the undo log completely. [Imp] Parameter Control Events have an edit memory now and adhere to the row spacing setting (tx cce, http://bugs.openmpt.org/view.php?id=190). [Imp] Added an order list context menu item to add a separator (+++) index. [Imp] When recording note offs in sample mode, Note Cuts are inserted instead of Note Offs. [Imp] Song position retrieval also works for sub tunes now, so song properties are restored properly when starting playback from a sub tune (http://forum.openmpt.org/index.php?topic=4578.0). [Imp] When trying to paste but no pattern data was found in the system clipboard, previously copied pattern data is now regained from an internal clipboard. [Mod] Renamed X Param to Parameter Extension. [Mod] Split keyboard settings now affect record groups: If there are channels assigned to both record groups, the lower part of the split keyboard is recorded into record group 2, the higher part is recorded into group 1 (http://forum.openmpt.org/index.php?topic=4568.0). [Mod] Shift-Selecting now uses the select key (which is Shift by default) instead of the hard-coded shift key. [Mod] Changed maximum width of pattern display to allow for wider displays than 4096 pixels (http://bugs.openmpt.org/view.php?id=215). [Mod] Changed maximum undo steps to 100,000. [Fix] When changing a note's octave, the triggered note was not stopped on key-up since the early OpenMPT 1.17 days (http://forum.openmpt.org/index.php?topic=4718.0). [Fix] Keyboard Split instrument setting was broken in OpenMPT 1.19. [Fix] Moving channels and then undoing the move doesn't screw up channel settings anymore (http://bugs.openmpt.org/view.php?id=156). [Fix] When undoing an edit switches to another pattern, OpenMPT tries to find a linked order for this pattern, so that continuous scroll keeps working (http://bugs.openmpt.org/view.php?id=189). Might not work reliably if the same pattern is used twice. [Fix] When duplicating a pattern sequence that starts with a non-existing pattern (e.g. +++), the pattern view didn't update properly so editing was still taking place in the previously selected pattern (confusing!) [Fix] Instruments are now faded out properly when editing XM modules. [Fix] Using Keyboard Split, it was possible to input unsupported notes (e.g. C-0 in MOD files). [Fix] It was possible to interpolate between a note and e.g. note cut, but it was not possible to interpolate between a note and no note. [Fix] Resizing a pattern didn't create an undo point. [Fix] Pattern names were not duplicated (http://bugs.openmpt.org/view.php?id=208). [Fix] Entering chords didn't do anything if only the note at the cursor position differed from previously entered pattern data. [Fix] The Reset Channel shortcut and the shortcut for setting Row Spacing to 9 never worked. Pattern tab::Note Properties [Imp] Better explanation of the MOD E5x effect parameter. [Fix] When showing the properties of a #xx (Parameter Extension) effect, negative values could have been shown. [Fix] Plugin indices for Parameter Control Events were off by one. Pattern tab::Find/Replace [Imp] Swapped channel numbers in the channel search feature are now treated correctly - if you enter e.g. 15 as the first channel and 3 as the second channel, channels 3 through 15 will be searched. [Imp] Volume column parameters are limited better now. It's still possible to do something like "Search for volume command d, replace by volume parameter 24", though... (don't do it!) [Imp] Follow Song isn't turned off anymore when using Find/Replace and the song isn't actually playing (http://bugs.openmpt.org/view.php?id=229). [Imp] Find/Replace also updates the order list with the correct order now - this doesn't work across multiple sequences yet, though (http://bugs.openmpt.org/view.php?id=152). [Fix] Replace instrument -1 didn't work as expected on instrument number 1. [Fix] Volume command parameters are now sanitized on replace (previously, it was possible to e.g. replace "v24" with "d", which would have generated the invalid command d24). [Fix] Replacing "no note" with note + 1 or note + 12 will not create C-0 / B-0 notes in the pattern anymore. Sample tab [New] Experimental feature: A Sample Tuner which tunes the sample to a specified note. [Imp] When changing XM autovibrato settings, they are now automatically propagated to other samples refererred by the same instrument. [Mod] Loops are now automatically enabled when setting loop points in the sample editor [Mod] Changed maximum undo steps to 100,000. [Fix] Pasting samples didn't copy over some sample settings (vibrato, etc.) if sample loops were enabled. [Fix] WAV Loading / Saving didn't consider RIFF padding bytes since... forever. Old broken samples (only 8-Bit Mono samples with an odd length are affected) should still load correctly. [Fix] Saving samples as WAV didn't save sample settings properly. [Fix] Deleting sample data adjusted loop points, but not sustain points. [Fix] Samples created using the "add silence / resize to" button didn't show up in the pattern editor's instrument list instantly. [Fix] Crossfade keyboard shortcut was broken. [Fix] Sometimes, the correct sample was not displayed after switching from another tab. [Fix] When converting between IT / MPTM and XM, the auto vibrato and sample pan limits were not updated instantly. [Fix] Saving and loading loop points in WAV samples is now done according to the RIFF standard (in OpenMPT, the loop end is exclusive, in the RIFF standard it is inclusive). Looped samples saved with older versions of OpenMPT are still imported correctly. [Fix] When loading multiple samples at once, existing samples are not overwritten anymore. [Fix] When cleaning up samples, the sample spin button is now updated instantly. Instrument tab [Imp] Better default values for loop points are chosen when enabling envelope (sustain) loops. [Imp] The sample mapping dialog accepts mouse dragging now. [Imp] Zxx value for the selected cutoff value is now shown next to the cutoff frequency (http://bugs.openmpt.org/view.php?id=36). [Imp] Filter settings and random variation sliders now have tooltips displaying the actual settings / swing variation. [Imp] When replacing an existing instrument, the replacement / deletion of the previously assigned samples can now be undone. [Mod] Two envelope points cannot share the same tick anymore in normal mode as well - since there is no interpolation happening between ticks anyway, this is no limitation at all. [Mod] Loading an instrument will not put samples into slots referenced by other instruments, even if those slots are empty (http://bugs.openmpt.org/view.php?id=213). [Mod] When assigning an instrument plugin, any sample associations are removed if they point to empty samples or if the user confirms the action. [Mod] Allow MIDI banks up to 16384 (only tested theoretically - do any plugins actually support that many banks?) [Mod] A newly added instrument is no longer assigned to an already existing but unreferenced sample. [Fix] Instruments are now faded out properly when editing an XM module. This means that sustain points can now also be tested properly. [Fix] Filter frequency display is now updated instantly when toggling the cutoff checkbox. [Fix] Loading instruments from other modules is no longer limited to 32 samples. [Fix] Fixed possible stack corruption when loading instruments into XM files. Tree view [Imp] The limit of 32 displayed song items has been removed. [Imp] If available, drum keys use key names provided by the soundfont instead of pre-defined drum key names. [Imp] All supported module files are now shown in the directory browser by default, even if "Show All Files" is disabled. [Fix] Fixed mnemonic shortcuts in some context menus. Mod Conversion [Imp] When converting XM to S3M / IT and there is pxx and Cxx in the same event, the commands are swapped (instead of simply deleting the Cxx command). [Imp] When converting to XM, samples are automatically converted to instruments if there are no instruments yet. [Imp] Instrument numbers next to Note-Offs are now removed when converting to XM. [Imp] Envelope loop behaviour is now fixed automatically when converting between XM and IT / MPTM. [Imp] Sample undo history is not lost anymore during conversion. [Fix] IT <-> XM auto vibrato and panning slide conversion were incorrect. [Fix] Instrument fadeout is now limited properly when converting from XM to IT / MPTM. MIDI Macros [New/Fix] The MIDI macro system has been rewritten completely and is now (hopefully) 99% compatible with IT's MIDI macros. Some macro letters have been changed / added, see the "macro help" button in the macro settings for more information (http://bugs.openmpt.org/view.php?id=94). [Imp] Added channel and polyphonic aftertouch to MIDI Macro presets. [Fix] MIDI Macros for controlling plugin parameters 128 through 131 were broken since probably forever (they did nothing). VST / DMO Plugins [New] Plugins can now send MIDI events to chained plugins. Useful for e.g. LFO or arpeggiator plugins. [New] Added "mappped" MIDI channels (like in Impulse Tracker). If a plugin's MIDI Channel is set to "mapped" in the instrument editor, note data is transmitted on a triggered note's pattern channel modulo 16. [New] Experimental built-in support for JBridge. If you run OpenMPT with admin privileges now, you can directly run 64-Bit VST plugins in OpenMPT. [Imp] Rewrote default plugin editor (the one that is used for plugins with no custom GUI). Multiple parameters are shown at the same time, with the same automation functionality as custom editors (record to pattern, automatic MIDI Mapping by pressing Shift, etc...), remembers window position, etc... (http://forum.openmpt.org/index.php?topic=1974.0) [Imp] Searching for multiple unknown plugins will now open only one browser window. [Imp] Named DMO parameter values are now displayed properly. [Imp] Preset browser in plugin window has been improved for plugins with many presets (like Synth1). [Imp] OpenMPT also checks for the new VST DLL entry point ("VSTPluginMain") when loading plugins now, so plugins that only export "VSTPluginMain" and not "main" will now also load (if there are any). [Imp] If a plugin fails to load and crashes OpenMPT, it is not loaded the next time OpenMPT is started anymore, to prevent infinite crash loops. [Imp] Added support for plugins that change the number of inputs / outputs during runtime. [Imp] Preset menu structure in the plugin window is now updated when the plugin tells to do so. [Imp] Added support for the (deprecated) GetPreviousPlug / GetNextPlug VST opcodes. [Mod] MIDI portamento on muted channels is not processed anymore (http://bugs.openmpt.org/view.php?id=219). [Mod] Warnings for known troublesome plugins are now shown when adding plugins to the plugin library instead of when adding them to a song. [Mod] MIDI Program and Bank indices start at 1 in all places now. [Mod] Parameter indices are always displayed in decimal instead of hex and in a more consistent manner throughout the whole interface. [Mod] Knob mode is set to linear (instead of circular) mouse actions for VST plugins that support it. [Mod] When using Randomise Parameters, only automatable parameters are now randomised. [Mod] If a plugin DLL is not found, OpenMPT tries to find it in the plugin directory instead of the settings directory. [Fix] Custom plugin editors don't have a grey bar of nothingness at the bottom anymore in semi-random cases. [Fix] Fixed potential problems with multi-threading VSTs when loading a plugin for the first time (tx manx). VST::Specific Plugin Fixes [Fix] When automating parameters from a plugin GUI, it is first checked whether the parameter can actually be automated. This fixes usage of the Shift key (open MIDI Mapping dialog) in e.g. Ugo's Motion and at the same time makes the Shift key work again in Synth1. [Fix] Plugins with more than 32 output channels (e.g. Kontakt) do not crash anymore. [Fix] SynthEdit plugin settings are now always restored correctly when opening a saved module (http://bugs.openmpt.org/view.php?id=210). [Fix] TAL-NoiseMaker and other plugins based on JUCE do not crash anymore when jumping between orders while playback is disabled (tx herodotas). Playback [Mod] Volume ramp up and ramp down are now two different settings. Ramp up is applied when increasing the volume and starting a sample, ramp down is applied when decreasing the volume or cutting the sample. The old behaviour can be achieved by using the same value for both settings. [Mod] The default ramp up setting is 16 samples (instead of 42 as before). [Mod] Global volume is now applied before all internal DSPs (http://bugs.openmpt.org/view.php?id=72). [Mod] Changed 4-Bit panning computation a bit, so that e.g. S80 is true left and S8F is true right. [Mod] Resonant filter mixing is now done with floating-point precision. This allows for greater compatibility with Impulse Tracker's resonant filter and eliminates unwanted extreme noises that previously appeared with certain samples, as well as broken filter coefficients at high playback samples rates. [Fix] When finishing a sustain loop that is behind a normal sample loop, sample playback is not simply stopped anymore. [Fix] Multiple fine pattern delays on the same row are now added up. [Fix] The length of a row is now (1 + Row Delay) * (Speed + Tick Delay) instead of ((1 + Row Delay) * Speed) + Tick Delay. [Fix] XM / MOD volume and panning slide nibble priority was wrong for slides with both nibbles set. This was only relevent for newly entered note slides, since slide commands loaded from files were automatically fixed (http://bugs.openmpt.org/view.php?id=242). [Reg] MMX-accelerated sample mixing has been disabled as it did not work properly with the floating-point precision filter mixing. IT [Mod] Newly created IT files have compatible playback mode enabled by default. [Mod] Saving: Files with filter envelopes use a different file version (IT 2.16 instead of IT 2.17) now. [Fix] Fixed volume and pan drifting when using Volume Swing / Pan Swing in compatible mode (tx Teasy). [Fix] Volume Swing range was 0 to 64 while it should be a percentage from 0 to 100 (old files are fixed automatically). [Fix] Multiple fine pattern delays on the same row weren't added up. [Fix] Channel and global volume slides with both nibbles set are now ignored. [Fix] Tone Portamento is now ignored if no note was previously playing. [Fix] If there are multiple row delay commands on the same row, only the leftmost command is considered. [Fix] Delayed notes that are on the same row as a row delay effect are be retriggered. [Reg] Removed restart position and Pitch/Tempo Lock from IT extensions. They can still be edited when loading an old IT file with restart position set or Pitch/Tempo Lock enabled, but for all other files, they are not available. IT::Compatible Playback Mode [Fix] New filter mode which pretty much sounds like Impulse Tracker's resonant filter (http://bugs.openmpt.org/view.php?id=8). The new filter mode is used iff "More IT compatible playback" is turned on and extended filter range is turned off. [Fix] The filter is turned on iff either the cutoff is not at maximum or the resonance is not at minimum. [Fix] No pan swing, panbrello, panning envelopes, etc. is applied on surround channels in compatible mode anymore (unless Quad Surround mode is enabled). [Fix] Sample and instrument panning overrides surround if Quad Surround is disabled. [Fix] NNA settings are only recalled when a note entry is found. [Fix] A high offset effect next to a note erroneously applied the offset instantly. [Fix] Fixed behaviour when picking up notes after a SCx effect. [Fix] Envelopes are now paused correctly when using S77 / S79 / S7B. [Fix] If a sample stops before it would be retriggered using Qxy, it is not retriggered at all. [Fix] Envelope carry cannot pick up an instrument after a SCx note cut anymore. [Fix] Envelope loop vs. sustain loop checking priorities were wrong (http://schismtracker.org/scdev/res/1513.html). IT::Loading [Imp] Songs with no order items are now also accepted. [Imp] Songs made with MPT 1.0 alpha and beta versions are now shown as such in the version information. [Imp] Most files saved with OpenMPT's early "compatiblity export" are not detected as MPT 1.16 files anymore. [Mod] Some compatibility settings are now always applied (not only in IT compatible mode) and files saved with older versions of OpenMPT are "fixed" automatically to still work with the new settings. Affected settings are: Out-of-range global volume handling, SC0 / SD0 handling, Autovibrato with Sweep = 0, Pitch / Pan Separation depth, slide commands with both nibbles set, pitch envelope loops, Row Delay behaviour. [Fix] Envelope points are now sanitized better and envelope points with the high byte missing are now loaded correctly. [Fix] Instruments in IT files with no samples are now loaded correctly. MPTM [Mod] Some compatibility settings are now always applied (not only in IT compatible mode) and files saved with older versions of OpenMPT are "fixed" automatically to still work with the new settings. Affected settings are: Out-of-range global volume handling, SC0 / SD0 handling, Autovibrato with Sweep = 0, Pitch / Pan Separation depth, slide commands with both nibbles set, pitch envelope loops, Row Delay behaviour. [Mod] Changed default amplification settings from 64 / 128 / 128 to 128 / 48 / 48 as they were messing horribly with precision and could easily lead to distortion. XM [Mod] Newly created XM files have compatible playback mode enabled by default. [Fix] Vibrato "ramp down" waveform is now played correctly (was previously played as "ramp up"). [Fix] Panning slide nibble priority (when both nibbles of the slide parameter are set) was wrong for XM files. [Fix] The first tick on a row was always "on" for XM tremor. [Fix] Creating a new XM file did not set the panning flag for the first (and only) sample. XM::Compatible Playback Mode [Fix] An instrument number (no matter what number) next to a note-off event recalls the default settings of the previously playing instrument. [Fix] Tone Portamento is ignored if it's combined with a note delay. [Fix] A great number of other mind-boggling combinations of Note Off, Instrument Number, Note Delay, etc... should also play more like in Fasttracker 2 now. [Fix] Great improvements with regards to E6x pattern loop handling in combination with pattern break / position jump effects. [Fix] Volume column tone portamento still had an effect memory. [Fix] An instrument number does not reset the bidi loop direction anymore. [Fix] The portamento target is not reset anymore when there is a note or instrument number with no portamento effect next to it. [Fix] Fixed handling of out-of-range notes (http://bugs.openmpt.org/view.php?id=217). [Fix] Length Calculation: E60 bug was not handled correctly if the last E6x command was on the last row of the pattern. [Fix] Envelope loop / sustain point priorities have been corrected. [Fix] Semi-fixed global volume commands: They are not applied on the first tick of a row anymore (unless pattern speed is 1). XM::Loading and Saving [Imp] Volume Column panning is now scaled better when loading or saving XM files, so it is translated to a 0...64 range instead of 2...62. [Imp] Saving: Samples that are not associated to any instrument are now tried to be written to XM files anyway (http://bugs.openmpt.org/view.php?id=234). [Mod] Some compatibility settings are now always applied (not only in XM compatible mode) and files saved with older versions of OpenMPT are "fixed" automatically to still work with the new settings. Affected settings are: Out-of-range global volume handling, portamento vs. offset priority. [Fix] Saving: When saving an XM with no instruments, garbage instrument settings were written. S3M [Fix] Some commands (Dxy, Exx, Fxx, Ixy, Jxy, Kxy, Lxy, Qxy, Rxy, Sxy) use the last non-zero effect parameter as memory. This fixes for example Satellite One by Purple Motion. [Fix] Pattern loops have no per-channel memory in ST3 (tx GreaseMonkey). [Fix] Amiga limits are now enfored correctly if the "preserve amiga limits" flag is set. [Fix] If there are multiple row delay commands on the same row, only the leftmost command is considered. [Fix] Delayed notes that are on the same row as a row delay effect are be retriggered. [Reg] \xx command has been removed from S3M format (existing tracks are updated automatically to use the Zxx command instead). S3M::Loading [Imp] Default channel panning is now scalled better when loading and saving, for a full 0...256 range. [Imp] PixPlay panning heuristics only apply to modules made with versions of ScreamTracker older than 3.20. [Fix] MIDI Macros are now cleared when loading S3M files saved with Impulse Tracker 2.13 or older (fixes BABYLON.S3M by Necros) [Fix] Some malicious S3M files could previously crash OpenMPT. MOD [Imp] Rewrote MOD magic parsing code a bit; can handle anything from 1 to 99 channel MODs now. [Mod] Removed MOD compatibility export, it is now always applied (but only oneshot samples are modified, and they are not modified in memory anymore). [Fix] Amiga limits are now enfored correctly in ProTracker 1.x mode. Other formats [Imp] Added hack-ish support for 32-bit float data to the WAV loader (the one that loads WAVs as modules, not as samples). [Imp] If opening a WAV file for rendering fails, the user can choose to retry opening the file. [Imp] UMX Loader: Instead of "scanning" Unreal files for modules, they are actually parsed correctly now. As a nice side effect, it is now also possible to load UAX files (collections of samples) from older Unreal Engine games as modules. [Fix] MIDI Import / Export: Exporting is no longer limited to the first 64 channels. MIDI files with any number of tracks can now be imported (previous limit was 64 tracks). [Fix] DBM Loader: Global volume command was broken since OpenMPT 1.19.02.00. [Fix] PSM16 Loader: Sample finetune and transpose should be correct now. [Fix] PTM Loader: Fixed sample names. Module cleanup [Mod] Reset Song Variables also cleans the MIDI Macros now. [Fix] Instrument to Sample conversion broke Parameter Control Events and note cuts / fades / offs. [Fix] Sustain loops behind sample loops are not ignored anymore when optimizing samples. Misc [New] Template modules can now be loaded and saved through the "File" menu. [New] Example modules can now be loaded from the "Help" menu. [New] Keyboard shortcuts can now be assigned to incoming MIDI CCs. For now, this only works if the pattern, sample or instrument editor is focussed. [New] Instead of multiple modal message boxes, a single dialog with a list of unsaved files is now shown when closing the main window. If you don't like the new behaviour, use "Disable modern close dialog" in the general settings. [New] The default module type can now be set in mptrack.ini by setting DefaultModType in the [Misc] section, e.g. "DefaultModType=mptm" (http://forum.openmpt.org/index.php?topic=4411.0). [New] Recent file list length can now be set through a hidden INI option, MRUListLength in [Misc] (up to 15 entries). [New] If a crash is encountered, OpenMPT tries to close the audio device (if it is still in use) and rescue all modified files. A memory dump is also created and can be used for debugging. [New] Added "Close All" shortcut + menu item (tx Wayfinder). [New] Added Finnish FT2 style keymap by cce. [Imp] Shortcuts are not processed anymore when a message box is shown. [Imp] Keyboard Config Dialog: Added a button to restore default configuration and a text field for searching keyboard shortcuts by name. [Imp] Added "/Portable" command line switch, which saves all settings in OpenMPT's directory (just like "UseAppDataDirectory=0" in the [Paths] section of mptrack.ini). [Imp] Compatibility export menu item is now greyed out for S3M and MPTM modules. [Imp] Plugin Manager: Buttons have mnemonics now, keyboard handler is disabled while the dialog is open, and the plugin list does not collapse anymore when removing a plugin (http://bugs.openmpt.org/view.php?id=186). [Imp] Added "Show Settings Folder" menu item to help menu. [Imp] Keyboard Settings: Added a search box, so finding a shortcut by name should be much easier now. [Imp] The "Amplify MIDI Velocity" option has been changed to use a freely adjustable amplification factor (instead of fixed x2 amplification). [Mod] Removed horribly esoteric sample "fixing" that was applied when loading MOD / S3M files or modifying samples in them - it could very well break some totally fine samples. [Mod] Channel Manager: Playback is not stopped anymore when stopping when reordering / removing channels. [Mod] Song Properties: Modern and Alternative tempo mode is not shown for XM / IT files anymore by default, and deprecated playback flags are now greyed out unless used by the current module. Song flags are not updated "live" anymore. [Mod] Revamped MIDI Mapping and Tuning dialogs a bit. [Mod] Added some missing shortcuts to the default key bindings (tx Wayfinder). [Mod] Compatibility export hints are now hideable. [Mod] Updated libraries: unmo3.dll (2.4.0.3), SoundTouch (1.6.0), zlib (1.2.7). [Fix] Wave Export: Fixed infinitely looping export (http://forum.openmpt.org/index.php?topic=3874.0). [Fix] BPM approximation also works reliably when a module is not playing now. [Fix] Song length estimation for alternative tempo mode was compltely wrong (tx Bavi H). [Fix] Combo boxes will not disappear randomly that often anymore. [Fix] Comments tab: C-5 frequency is now displayed correctly in all formats. [Fix] MP3 Export shortcut was broken (http://bugs.openmpt.org/view.php?id=201). [Reg] Saving to another module format requires explicit module conversion now, as it was causing more trouble than doing good. Previously, it was possible to simply enter a different file extension in the "Save As" dialog, so editing an IT file and saving it as "foo.mod" would have saved it as a ProTracker MOD instead of an IT file with .mod extension. Bundled plugins [New] OpenMPT ships with a MIDI Input / Output plugin now. It can be used to send incoming MIDI Events to other plugins or send MIDI events to external MIDI gear. v1.19.04.00 (9 September 2011, revision 1027) --------------------------------------------- Pattern tab [Imp] MIDI controller changes that are not covered by MIDI Mapping also create an undo point now. [Fix] Parameter Control Event automation via MIDI Mapping didn't create an undo point if the cursor was in the first row or column (and if it wasn't, it stored too much undo data). Instrument tab [Fix] When editing the first envelope node while compatible playback mode was enabled, the node was moved to the second tick. [Fix] Aftertouch messages forwarded to plugins don't mark the module as modified anymore. Mod Conversion [Fix] Sample panning is now properly reset / disabled for MOD / S3M / XM files. [Fix] Various instrument properties were not cleared when converting from IT / MPTM to XM. [Fix] Sample sustain loops were also not removed when converting from IT / MPTM to XM. VST / DMO Plugins [Fix] VST host version fields didn't follow the actual version of OpenMPT. VST::Specific Plugin Fixes [Fix] Plugins based on the JUCE framework (e.g. TAL-NoiseMaker) don't crash anymore during WAV export. [Fix] Some multi-input plugins like Guitar Rig will not crash anymore. Other formats [Fix] Fixed vulnerabilities in WAV, AMS and DSM loaders (http://secunia.com/advisories/45131/). Misc [Fix] Network paths starting with "\\" are now loaded properly from settings. Previously, they were treated as relative paths. [Fix] Adding plugins through the main menu didn't mark the module as modified (http://bugs.openmpt.org/view.php?id=163). v1.19.03.00 (22 July 2011, revision 921) ---------------------------------------- General tab [Imp] When editing panning, surround is disabled and when enabling surround, panning is reset. [Imp] When moving a plugin to another slot, plugins routing their output to the selected plugin are now taken into account when choosing a default slot to move the plugin to. Pattern tab [Imp] Channel Surround status is now also indicated in the status bar. [Fix] When playing a pattern that is actually not in the sequence and that has more rows than the last played order item, a crash could occour while playing those extra rows. (Welcome to episode 2938 of "this should not have happened afterall".) [Fix] Shift + Channel Dragging killed the last channel (http://bugs.openmpt.org/view.php?id=133). [Fix] When using the pattern play controls (e.g. "Replay Pattern") on a pattern that isn't played in the normal play sequence, tempo and global volume commands on the first played row are not ignored anymore. [Fix] Songs shouldn't stop anymore after playing them one time and if playback was initially started using a pattern play mode with loop enabled (http://bugs.openmpt.org/view.php?id=11) [Fix] When overwriting Parameter Control Events with normal notes, the pattern cell is now cleared properly. [Fix] Using the "Paste Pattern" menu entry in the order list didn't refresh the pattern display. Sample tab [Imp] When selecting parts of the sample, the selection range is now also displayed in samples, not only seconds (http://bugs.openmpt.org/view.php?id=136). [Imp] When changing the sample's global volume while removing DC offset, the change is now instantly applied to all channels that are currently playing the sample. [Fix] 8-Bit Stereo samples were not saved correctly (http://bugs.openmpt.org/view.php?id=153). Instrument tab [Imp] Two envelope points cannot share the same tick anymore in compatible mode. [Fix] Suggested filename when saving instrument was sometimes cut off. VST / DMO Plugins [Fix] When a plugin requests song position in nano seconds, the correct value is now returned (tx coda). [Fix] Loading a VST preset (fxp) didn't mark the document as modified (tx BooT-SectoR-ViruZ) Playback [Fix] Filters in XM files aren't reset with every new note anymore (this broke some versions ago). IT [Fix] Saving IT instruments (in both IT and ITI files) with an invalid sample map crashed the tracker (http://bugs.openmpt.org/view.php?id=142) [Fix] (Also applies to MOD) When swapping samples on the fly and the current playback position is beyond the new sample's length, it's reset to 0. MPTM [Fix] Saving long envelopes (> 25 envelope points) in the MPTM format was broken since... well, actually, it never worked in any officially released version. Now you can finally have up to 240 envelope points. Other formats [Fix] ITP Saver: Fixed nasty bug when the internal order length was not 256. [Fix] IMF Loader: Orpheus' 8-Bit cutoff range was not converted to MPT's 7-Bit range. Misc [Imp] Tagging: ID3 tags contain a TDRC tag instead of TYER now, as recommend by the ID3v2.4 standard. Also added a TPBM (beats per minute) tag. [Imp] Hack detection also notifies about stereo samples in XM files now. [Imp] Fixed tab order in the pitch shift dialog. [Mod] Song Properties: Legacy Mixmodes RC1 and RC2 are now only displayed if they are actually used by the module. [Mod] When loading a module made with a newer version of OpenMPT which only differs in the build number (last number in the version), no warning is shown anymore. For all other cases, the warning is now also shown for MPTM files. [Mod] If opening MIDI In fails, the MIDI config dialog is shown. [Fix] MP3 export will no longer result in a heap corruption and thus crash the tracker (http://bugs.openmpt.org/view.php?id=97). [Fix] Rendering sub songs to WAV resulted in an endless render loop. [Fix] Setup Dialog: Fixed the checkbox list so that it doesn't look weird under Wine and doesn't crash when compiling OpenMPT with VS2010 (tx jmkz). v1.19.02.00 (13 May 2011, revision 871) --------------------------------------- Pattern tab [New] Channels can now be moved by dragging their channel header. Holding Shift while doing so duplicates the channel. [Imp] Moving channels through the channel manager creates an undo point now. [Fix] 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] Axx is not limited to value 7F anymore in IT / S3M format. VST / DMO Plugins [New] New menu entry in the plugin editor: Create instrument from plugin. [Fix] Fixed note handling in plugin editor for VSTs that actually don't support MIDI input (http://bugs.openmpt.org/view.php?id=102) Mod Conversion [Imp] Improved conversion of Sxx (IT / S3M) and Parameter Control Events. [Mod] When converting from MOD / S3M to XM / IT, compatible play is automatically enabled. [Fix] Sustain loop conversion didn't work. Playback [Fix] 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] When clearing MIDI macros during loading, only the Zxx macros are cleared, but not the global (currently unused) configuration. IT::Compatible Playback Mode [Fix] Panning slides with both parameter nibbles set were not ignored in compatible mode. XM [Fix] When using compatibility export, the number of samples per instrument is now limited to 16. MOD [Imp] 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] "+++" 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] When clearing MIDI macros during loading, only the Zxx macros are cleared, but not the global (currently unused) configuration. Other formats [Imp] DMF Loader was rewritten completely and is a whole lot more accurate now. [Fix] J2B Loader: Empty sample slots are now treated correctly in new (RIFF AM) J2B files. [Fix] DBM Loader: Global volume was scaled wrong. [Fix] 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] OpenMPT can now automatically check for updates (daily / weekly / monthly). [Mod] "Embed MIDI macros" is now only enabled during song creation if the user's default MIDI macro setup differs from standard configuration. [Fix] When using "Convert instruments to samples" in the Song Cleanup dialog, "Remove samples associated with an instrument" actually destroyed all samples. [Reg] 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 (1 April 2011, revision 836) ---------------------------------------- Pattern tab [New] Clicking and dragging the row numbers selects the whole row in Excel / Calc style (http://bugs.openmpt.org/view.php?id=45) [New] The new keyboard shortcuts "Select beat" and "Select measure" can be used to automatically extend the current selection to the beat / measure boundaries. [New] 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] Using the Goto Dialog updates channel parameters and sets the elapsed time now (http://bugs.openmpt.org/view.php?id=28). [Mod] Undo steps have been increased from 100 to 1000. [Fix] 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] Cursor paste was possible even when editing was disabled. [Fix] Using Right-Click -> Change Plugin on Parameter Control Events did not work for plugin numbers that were higher than the highest instrument number. [Fix] When entering chords into the pattern editor, the module was only marked as modified if the base note of the chord was changed. [Fix] When jumping to an order which is normally not played, the song variables are now reset. Previously, if the main song had e.g. a global volume fade out at the end, this was retained when switching to an unplayed order, effectively muting all sub songs. [Fix] 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] Queueing a "---" or "+++" item now automatically moves the queue "cursor" to the next available pattern. Previously, queueing a "---" pattern restarted the song. [Fix] Changing a channel name from the pattern editor didn't mark the document as modified (http://bugs.openmpt.org/view.php?id=65) [Fix] When restarting a pattern, the song timer was not reset properly. [Fix] Entering a note-off event in the MOD format created an unnecessary undo event. [Fix] Automation data is not written to the pattern if the current module format does not support smooth MIDI macros. [Fix] Selections were not clamped properly to the end of the pattern sometimes. [Reg] 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] Explanation of Q0x was wrong for IT / S3M. [Fix] Changing a value didn't create an undo point (http://bugs.openmpt.org/view.php?id=56). [Fix] Setting the Parameter Control Event plugin didn't work. Pattern tab::Find/Replace [New] Added Find / Replace mode: Find in current pattern selection (http://bugs.openmpt.org/view.php?id=42). [Imp] 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] "Replace All" just creates one undo point now. Pattern tab::GUI [Imp] Special paste modes have been moved to a sub menu in the context menu, to save some space. [Imp] Status bar now indicates if highpass filter is enabled on a channel (http://bugs.openmpt.org/view.php?id=92). [Imp] The dodgy note colour is now also customisable. [Mod] When removing a channel (via context menu) that contains no data in any pattern, no warning is shown anymore. Sample tab [New] 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] The new "sample grid" feature can create equally-sized sample selections, so it is e.g. easy to split a sample into four equally-sized samples. [New] 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] Ctrl + Mouse Wheel can now be used for zooming into the sample data. [Mod] Undo steps have been increased from 100 to 1000 (per sample). [Fix] When cutting samples with a loop, the loop end point was not always moved correctly if the cut start was in the loop. [Fix] Loop point controls also accept large numbers to be inputted manually. [Fix] Sample Undo didn't preserve the sample name. [Fix] Changing zoom level should now preserve the view position better (http://bugs.openmpt.org/view.php?id=3). Instrument tab [New] Clicking on an empty plugin slot in the plugin dropdown list opens the "Add Plugin" dialog (tx coda) [Imp] Ctrl + Mouse Wheel can now be used for zooming into the envelopes. [Imp] 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] Copying and pasting envelopes with no points isn't possible anymore. (Who wants to do that anyway?) [Fix] Fadeout control also accepts large numbers to be inputted manually (http://bugs.openmpt.org/view.php?id=81). [Fix] Changing the filter mode didn't mark the file as modified. [Fix] 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] 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 / DMO Plugins [New] Plugins can now request common file dialogs (file and directory selection). [Mod] When automatically inserting a new instrument from the plugin editor, the bank and patch values are now not filled in anymore, so it is easier to change to another patch while editing. [Mod] Various small improvements to support VST 2.4 plugins better. [Fix] 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] Fixed garbage characters shown in preset fields of plugins that don't return program names. VST::Specific Plugin Fixes [Fix] Speaker arrangement is now sent to the plugins upon initialization. This fixes Voxengo SPAN 2 (a VST 2.4 plugin). [Fix] The EnergyXT GUI does now also work after closing and re-opening the VST editor (http://forum.openmpt.org/index.php?topic=2307.0). Mod Conversion [Imp] If the new format doesn't support restart positions, it is now tried to convert the restart position to a pattern command. [Imp] 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] Sample sustain loops are now converted to normal loops if needed and possible. [Imp] Bidi loops are disabled when converting to MOD / S3M now. [Imp] More warnings are shown, old warning messages were improved. [Imp] 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] When converting to XM, the E60 bug is now tried to be compensated. [Fix] 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] 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] Improved the algorithm for finding a free channel for note playback in the editor (does not affect normal module playback). [Mod] 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] 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 [Fix] Incorrect notes were memorized for PPS (and possibly other effects) when working with instruments that had non-default note assignments (e.g. C-5 => D-4) [Fix] In compatible mode, bidi loops are now treated like in IT's software mixer (http://bugs.openmpt.org/view.php?id=29). [Fix] Sample autovibrato is now hopefully a bit closer to Impulse Tracker in compatible mode... (http://bugs.openmpt.org/view.php?id=5) [Fix] 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] Various fixes to playback of multi-sample instruments. "Ultima Ratio" by Nebularia and "Shuttle Departure" by Sphenx sound better now. IT::Loading and Saving [New] 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] Autovibrato sweep is now fixed when loading IT files made with old versions of (Open)MPT. [Imp] 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] 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). [Mod] 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] Note mapping items that aren't notes (e.g. empty notes) are now ignored when loading and saving. [Fix] When saving, non-existing envelopes are now replaced by a default (disabled) envelope, so that they can still be edited in Impulse Tracker. [Fix] The extended sample map is not saved anymore in the instrument headers when using compatibility export. MPTM [New] 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] Edit history information (read the "IT" section above for an explanation) XM::Loading [Fix] Fixed handling of instruments with no samples, so that instruments assigned to VST plugins work correctly. XM::Compatible Playback Mode [Fix] Various mind-boggling combinations of EDx, notes and instrument numbers should work now. [Fix] When there's an instrument number next to a 3xx effect which differs from the previous instrument number, it resets the instrument properties of the previous instrument. [Fix] Portamento combined with an Offset command results in the offset command being ignored. MOD [Imp] It's now possible to create MOD files with more than 64 (and up to 128) distinct patterns. Just like in ProTracker, such MOD files are identified by the "M!K!" signature (instead of M.K.) [Fix] The maximum speed for MOD files was off by one in some places (31 instead of 32). MOD::Loading [New] Heuristic detection for VBlank MODs. Most MODs use the CIA timer instead of VBlank timing, but some don't. [New] 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] Heuristic detection for MODs with 7-bit panning, which is then automatically converted to 8-Bit panning. [Fix] Tentative fix for MODs with short loops at the sample start that were most likely not intended. S3M [Mod] 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] Octave 8 was allowed in S3M files while it shouldn't (it wasn't even saved in the file) [Fix] Loading: Fix to pattern loader (for empty patterns) [Fix] Removed the X param (#) effect from the supported effect list. [Fix] 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] Pattern breaks >= C40 are now ignored. [Fix] Global volume commands > V40 are now ignored. Other formats [Imp] Garbage characters in sample / instrument / song names should be gone now.. This should e.g. avoid sample names like " ntitled" turning up in modules after deleting sample names. [Imp] Improved handling of the note cut effect in PTM (Polytracker) files a bit. [Mod] Improved portamento import precision for DBM and ULT loaders (patch from Schism Tracker) [Mod] Added a version check to the ITP loader (why was this not there in the first place?) [Fix] As MTM files were converted to MOD automatically when being loaded, channel panning was lost. Now they're loaded as S3M instead. [Fix] 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] 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] WAV Export: Sample-exact cue points are now written at each pattern transition. [New] Most MPT hacks in modules can now be found through View -> Find MPT Hacks in Song. [Imp] 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] Additional new keyboard shortcuts: Panic, View Edit History, Set Invalid / Ignore (--- / +++) Pattern (in the orderlist), plus the ones mentioned in above categories [Imp] 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] Sound Setup: For ASIO devices, only supported sampling rates are now shown. [Imp] The instrument list on the comments tab also shows assigned plugins now. [Imp] Added Mix Paste (IT Style) to the "Paste Special" edit menu [Imp] Macro Editor: User is now warned if the current macro configuration differs from the default configuration but embedding macro configuration is disabled. [Mod] 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] On first run, the default ASIO driver is now chosen instead of DirectSound (if there is one). [Mod] The "Original" mix mode now also has a version number (1.16) to reflect what the "original" thing is. [Mod] Updated genre list in the MP3 export dialog. [Mod] When using non-ACM MP3 codecs (e.g. lame_enc.dll), 320kbit/s bitrate is now available. [Mod] "No extra-loud samples" is now enabled by default (as it's more suitable for mixmodes RC3 and Original) [Mod] 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] Updated unmo3.dll to version 2.4.0.1 [Mod] Updated the internet link list in the Help menu. [Fix] Mod Cleanup: Rearrange patterns was broken when using more than one sequence in the MPTM format (tx Skaven). [Fix] Mod Cleanup: Various sample / instrument rearranging functions broke Parameter Control Events. [Fix] 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] When there was no INI file, the size of the upper pattern view was defaulting to a wrong value. [Fix] The ID3v2 "comments" field was not formatted properly when exporting to MP3. [Fix] unmo3.dll and uxtheme.dll (for theming the general tab) are now loaded "safely", to avoid the currently spreading DLL exploits. [Fix] Editing a sample / instrument name on the comments tab didn't mark the module as modified (tx djmakas) [Fix] 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] "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 (4 August 2010, revision 673) ----------------------------------------- General tab [Imp] 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] Changed tab order of the lower panel (now it's more logical to me) Sequence editor [Imp] When inserting patterns at an empty position, the position counter is not increased anymore. [Imp] Improved sequence name display in context menu for empty sequences. Pattern tab::pattern editing [Imp] 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] When the first column of a pattern selection (larger than one selection field) was the parameter column, Parameter Control Event values in this column were not reset properly. [Fix] Transposing notes up / down doesn't allow notes which are actually not supported by the current module format (e.g. notes below C-1 in XMs) anymore. [Fix] Keyboard shortcut for toggling record state didn't save the change, so it was reset with every new module. Pattern tab::Note properties [Imp] Effect info now shows the real finetune values for E5x in MOD/XM and E2x in S3M instead of just 0...15. [Imp] Set envelope position effect (Lxx in XM) is now explained better. [Fix] Fixed a crash when accessing the note properties of malicious and not-so-malicious modules (e.g. jt_pools.xm) which have more than 256 sample slots. Sample tab [New] 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] Sample Drawing: Horizontal lines can now be drawn by holding down the shift key. [Imp] Finetune range is now limited from -8 to 7 for MOD files. [Imp] 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] When using the spin button next to the finetune or frequency control, the module was not marked as modified. Instrument tab [New] Pressing Ctrl while dragging a point in the envelope editor now also moves the tail of the envelope. [Imp] More helpful value display for the panning envelope in the status bar with indication what's left and what's right. [Imp] 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 (e.g. when trying to edit a previously deleted instrument). [Imp] 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] 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] Sample Map accepts various new shortcuts now. [Imp] When pasting an envelope with a release node, it's now ignored in formats that don't support it. [Reg] 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...). Tree view [Imp] Ask for confirmation when deleting patterns, samples, instruments, sequences. [Fix] Deleting a sample from the tree view and then applying undo for this sample in the sample editor crashed OpenMPT. Mod conversion [Imp] Some improvements with converting note cuts, ECx/SCx and EDx/SDx. [Imp] When converting to XM, rogue note delays are removed from the patterns to avoid interference with a FT2 bug. [Imp] Envelope release nodes are now removed when converting from MPTM. [Fix] When converting to MPTM, "+++" separator patterns are not recognized as sub tune indicators anymore, as that was quite annoying. [Fix] Channel settings were not reset properly for MOD/XM/S3M, only the first channel was fixed (tx Sam_Zen). [Fix] Extra fine portamento was not converted properly when converting from IT/MPTM/S3M to XM. Playback (see also format-specific changes below) [Mod] 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] The Pattern Loop command did not work properly on rows > 255 IT::Saving [Imp] 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] If filter envelopes are used, a different value for the cmwt ("compatible with") field is now used in compatibility export (like in SchismTracker). [Fix] Instrument panning was not converted properly. XM::Compatible Playback Mode [Fix] 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] 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. XM::Saving [Imp] Panbrello is not saved anymore in compatibility mode. [Fix] 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] Saving XM files with 127 channels (sigh) was broken. S3M [Fix] Samples with very short loops (4 bytes) are now loaded properly. Fixes "a tiny problem.s3m" by \slash. [Fix] Notes with an SD0 effect were not ignored properly when there was a row delay effect on the same row. Now they are ignored in any case. Other formats [Imp] Song messages are now loaded with more accuracy for some formats. [Imp] 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] 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] PSM Loader: Small improvements. [Fix] MTM Loader: The "beats per track" (means lines per pattern) setting is now taken into account. [Fix] PSM16 Loader: Since the control channels were muted, tempo commands were ignored, effectively slowing down some PSM16 tracks. [Fix] MPTM Saver: When deleting patterns using the tree view, it was possible that Parameter Control Notes were not saved properly anymore. Misc [New] Experimental "panic" button on the main toolbar. At the moment, it just kills all VSTi and sample voices. [Imp] Added mnemonics to the wave export controls. [Mod] In the mod type dialog, the "misc flags" can now be toggled using check buttons instead of an edit field. [Mod] 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] Updated DE_jojo.mkb to include new shortcuts, remapped a few others (for IT-style). [Mod] Updated FR_mpt_(legovitch).mkb and NO_mpt_classic_(rakib).mkb (tx Paul Legovitch, Rakib). [Fix] Colour Setup: Some colours in the MPT default colour scheme were not set up properly when switching between presets. v1.18.02.00 (30 May 2010, revision 610) --------------------------------------- General tab [Imp] Disabled tempo slider for MOD files (it was just confusing) [Imp] Disabled global volume slider for MOD files, instead enabled the sample pre-amp slider (so it is also possible to make output louder) [Imp] The "output to" dropdown list also shows the actual plugin name now (instead of just the library name). [Fix] 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] The restart position edit control is disabled for S3M files. [Fix] 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] "Select All" shortcut also works here now. [Imp] The sequence menu also allows to insert empty sequences now. [Fix] Jumping between patterns also stops VSTi notes now. Pattern tab::Pattern editing [New] Extended context menu for Parameter Control Events. [New] Key shortcut + context menu entry for toggling the plugin editor of the Parameter Control Event that's under the cursor. [Imp] Overflow paste now only uses one undo step. [Imp] Instead of simply ignoring note off/cut/fade when working with .MOD files, it is converted to C00. [Fix] Effect visualizer is now aware of Parameter Control Events (http://forum.openmpt.org/index.php?topic=3836.0). [Fix] When using MIDI record or split keyboard settings, volume data was written into the volume column in MOD format. [Fix] When converting Parameter Control Events to MIDI Macros, the instrument index is now also cleaned as well. Noticeable for example when pasting Parameter Control Events into an IT module. [Fix] Now, plugin slot 100 can also be automated using Parameter Control Events. [Fix] When pasting pattern data that exactly reached the pattern end with overflow paste enabled, a redundant undo point was created. [Fix] Entered (volume) effects are now properly validated (makes a difference e.g. in MOD format where it was previously possible to enter effects like Hxx) [Fix] 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] When deleting all patterns via the tree view and then switching to the pattern editor, pattern 0 is not created automatically anymore, to avoid confusion. [Reg] 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] When the ProTracker 1.x 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] The status bar shows plugin and parameter names for Parameter Control Events now as well. [Imp] Effect vis: Make use of song's own row highlighting variables instead of fixed global ones. [Fix] 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] Changing a channel plugin in MOD/S3M files doesn't mark them as modified anymore. [Fix] 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] Don't allow values > 63 for "break to row" commands in MOD/S3M. [Imp] 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] In the note properties, the Gxx effect for XM files was not limited properly. [Fix] 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] 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] Find/Replace didn't work properly when replacing Parameter Control Events with something that's not a Parameter Control Event. [Fix] Instead of turning "Follow Song" off, the Find/Replace dialog toggled it. Sample tab [New] Shift+New = Clone sample slot [New] Option to not ask for RAW import settings again (settings are remembered independently for all modules) [Imp] Remember previous settings in RAW import dialog [Imp] 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] Sample name and filename length are now properly limited. [Fix] 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] Sample Undo: If no custom value was set, the default value was set ridiculously high (tx Paul Legovitch) [Fix] Sample Undo: Fixed another possible problem when undoing actions with very little memory left. [Fix] 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] When loading an extremely short raw file (e.g. 1 byte) twice, it crashed OpenMPT. Instrument tab [New] Envelope zooming. Might still look very weird (especially the first tick and around loop points). Includes two new keyboard shortcuts. [New] Transpose Up/Down for sample map. [Imp] When pasting an envelope, it's now also automatically enabled. [Imp] Instrument name and filename length are now properly limited. [Imp] "Scale envelope points" is now also available for scaling the values of the points (y axis). [Fix] 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] It was impossible to assign plugin slot 100 to an instrument. Comments tab [Fix] Correct C-5 frequency is now also shown for XM modules. [Fix] When editing sample / instrument names, they are limited properly in length now. Tree view [New] 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] Display sequence index next to sequence names. [Imp] 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] J2B files were not shown in the tree view. [Fix] Soundfont samples were not playing correctly anymore. Note that soundfont samples in the MIDI library still don't work. [Fix] A crash could occour if the instrument library path was too long (e.g. because of malicious strings in the [Paths] section of the INI file) [Fix] "Bypass" action for plugins didn't set the document as modified. [Fix] Right-Click on module -> Close didn't ask for confirmation when the document was modified. [Fix] Insert/Duplicate sequence actions didn't set the document modified. Grey out those two actions if no additional sequences can be added. VST / DMO Plugins [New] 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] 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] Editor: Added shortcuts for "toggle bypass", "pass keys to plug" and "record params to pattern" [Mod] Editor: Changed number of patches per sub menu from 100 to 128. Now, one sub menu equals ones MIDI bank (more logical) [Fix] Editor: Preset names starting with ' ' >= char > 'A' were cropped (i.e. "123ABC" was displayed as "ABC") [Fix] Editor: Changing a plugin parameter in MOD / S3M files doesn't mark them as modified anymore. [Fix] Even if an instrument was muted, a VSTi assigned to this instrument was still playing in the pattern. [Fix] Some VSTs that previously wouldn't load might now load fine. [Fix] Returned host CanDo-values were wrong (since pre-RC1 era). Mod conversion [Fix] When converting from MOD to S3M or IT, the Invert Loop effect was not removed. [Fix] 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] 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] When removing instruments from the tree view and converting the module to a different format which also supports instruments, OpenMPT crashed. [Fix] When converting to MOD/S3M, the extended filter range flag was not deactivated. [Fix] 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] If necessary (S3M), the restart position attribute is reset. [Fix] Merging multiple sequences didn't properly convert '---'/'+++' orders. IT::Loading and Saving [Imp] Saving: Compatibility export saves stereo samples again, as other tracker like Schism also support this (and so do the official IT specs). [Fix] Saving: 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] Loading: ChibiTracker uses a different newline characater for the comments text, which was not handled properly. [Fix] Loading: 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 from SchismTracker). [Fix] 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 e.g. the bidi loop flag was not disabled when loading a new sample that had a normal loop. IT::Compatible Playback Mode [Fix] Note Cut really cuts notes and does not just mute them (so that following volume commands could restore the sample). [Fix] Always reset autovibrato settings when there's an instrument number (fix from SchismTracker). [Fix] S77 / S79 / S7B are supposed to pause the envelope, not disable it. [Fix] Ignore slide commands with both nibbles set (e.g. D55, PA1, ...). [Fix] Default Vibrato / Tremolo / Panbrello waveform values to sine waveform if out of range (e.g. S35). IT/MPTM/ITP, Instrument extension handling: [Fix] Fixes to instrument envelope flag handling (broken in 1.18.00.00). XM::Loading [Imp] Improved detection of an old version of MPT (1.09?). [Fix] Some XMs not made with ModPlug were recognized as files made with MPT. [Fix] The last XM instrument was not always loaded. [Fix] Early versions of Skale Tracker (R.I.P.) apparently wrote malformed XM sample headers, so OpenMPT failed to load such modules. Such files are loaded correctly now (fixes IFULOVE.XM by yeep). XM::Compatible Playback Mode [Fix] Volume column doesn't have an effect memory, most effects with param = 0 are useless. Those are ignored during playback and also when exporting the file in compatibility mode. [Fix] Improved handling of the situation when a 3xx effect was used, but previously no note was playing. [Fix] An instrument change next to a portamento event is now ignored (fixes partytime.xm by cancer). MOD [Imp] Module creation: When creating a new .MOD, it has 31 sample slots by default. [Imp] Playback: When the ProTracker 1.x flag is activated, Amiga note range limits are automatically taken into account. [Fix] Saving: Samples were shifted badly if the sample size was odd (wow, this is an OLD bug!). [Fix] 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] Loading: Very short loops (4-8 bytes long) are not ignored anymore. This fixes "Crew Generation" by Necros. S3M [Imp] Loading: Display a message if an S3M file contains Adlib instruments (rare). [Fix] In ST3, muted channels are completely ignored, not even effects are interpreted. Let's try this in MPT, too. [Fix] 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] Cannot create S3M files with more than 100 patterns anymore, because... [Fix] ... it was possible to create S3M files where the 256 parapointers were not enough, resulting in incomplete/broken files. [Fix] Note Cut really cuts notes and does not just mute them (so that following volume commands could restore the sample) MPTM [New] Added combined note delay & note cut command for MPTM only (":xy" means delay until tick x and play for y ticks). [Fix] MPTM Saving: A missing null pointer check crashed OpenMPT when trying to access a deleted instrument slot. Other formats [Imp] 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] PTM Loader: Fixed an unhandled null pointer exception that occured when loading some unsupported RAR files. [Fix] PSM16 Loader: Fix for note cut on tick 0 (warbot tune from Silverball). [Fix] 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] DBM Loader: Various fixes to increase import precision and an endianness fix. [Fix] 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] IMF Loader: Some fixes copied from Schism (copied from MikMod). Module cleanup [Imp] In the cleanup dialog, mutually exclusive items are now automatically unchecked, to avoid confusion. [Imp] Made the dialog look a bit nicer. [Fix] 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] Fixed a memory leak in pattern name handling. Wave Export [New] It is now also possible to render by instrument (i.e. one wave file per instrument). [Imp] The "render by channel" mode ignores empty channels now. [Imp] 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] 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] 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] 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] 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] Song Properties: Tool tips are shown for various controls. [Mod] 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] Removed old "velocity" volume command, which was experimental and unused. [Mod] Replaced default VU-meter colours for the MPT scheme by more pleasant colours that were already used for the other themes. [Mod] Updated internet links (ModPlug Central Forums link is now a permalink) [Fix] 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] Channel Manager: When removing channels using the channel manager, their names were not cleared properly. [Fix] Song Length Estimation: Increased accurary *a lot*! Doesn't get tricked by pattern jumps anymore, hehe. :) [Fix] Instrument I/O: OpenMPT-specific flags in old ITI / XI files are loaded correctly again (broken in 1.18.00.00). [Fix] 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] Removed AutodetectITplaystyle option, since the tracker detection works reliably enough now. Tracker detection can not be ignored anymore now. Installer/release package [New] Ladies and gentlemen... we finally have an installer. :) [Mod] Updated DE_jojo.mkb. [Mod] Updated Paul Legovitch's keymap (now also suitable for desktop keyboards). [Mod] Updated default keybindings. v1.18.00.00 (26 January 2010, revision 475) internal test build --------------------------------------------------------------- General tab [Fix] Channel name input field was not limited properly. Sequence editor [New] Can now copy/cut/paste order selections. [Imp] Using the keyboard manager for shortcuts. 0...9, + and - keys are now also configurable. [Imp] Duplicate / Create new pattern shortcuts do also work here now. [Imp] Show cut/copy/paste orders in context menu. [Imp] Middle click can now also be used for queuing patterns. [Fix] Pasting orders now removes "+++" items if they are not supported by the current format. [Fix] 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] New paste mode "push forward paste", which resembles the default paste behaviour of Impulse Tracker. Includes new shortcut. [New] 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] When using the MPTM format, plugin param changes are written to the pattern as Parameter Control Events (instead of smooth MIDI macros). [Imp] Assume that the clipboard pattern format is IT (instead of MOD) if no information about the format is available. [Imp] Pasted Commands are converted if necessary, and commands that are invalid in the current format are removed. [Imp] If "record note off" is enabled and Note Off commands are not supported by the current format, try Note Cut and volume commands. [Mod] It is impossible to enter something into the volume column in MOD format now. [Mod] When interpolating Parameter Control Events, the plugin number and note type won't get overridden if the note type is already PC or PCs. [Fix] Pattern Copy & Paste: Mix paste behave better with parameter control notes. [Fix] Amplify acted VERY weird when it was applied on an instrument that's not assigned to any sample. [Fix] Amplify doesn't use volume column in MOD format anymore. [Fix] When recording live from the keyboard, SDx shouldn't exceed the song speed anymore. [Fix] Got rid of possible redundant undo points. [Fix] Parameter Control Events are now deleted properly (last column). [Fix] Copying only the param column of Parameter Control Events overwrote the value column when pasting them. [Fix] Entering Note Fade notes didn't work the "old style" way. Pattern tab::GUI [New] Channel rename dialog in channel header context menu. [Imp] Tidied up the upper panel. It fits perfectly on a 1024x768 screen with tree view enabled and also works on 800x600 with tree view disabled. With the new layout, about 8 more pattern rows can be seen in comparison to the old, bloated 1.17.02.* interface. [Mod] Due to this cleanup, the "split keyboard" feature has been removed from the interface. The split keyboard settings dialog can now be accessed by using a shortcut, which should be even faster than the old method. [Imp] If keyboard split is active, instrument drop list will show split instrument and split note. [Imp] Grey out pattern name input field when in MOD/S3M mode. [Imp] Added sequence selection edit control. [Mod] Instead of hiding the sequence name control, just disable it (looks better). [Fix] If the current pattern is the last possible pattern in the sequence, no "next pattern" is displayed. Pattern tab::Note properties [Imp] Hopefully correct limitation and explanation of "Set * waveform" parameters... [Imp] Better explanation of "Invert Loop" parameter. Pattern tab::Find/Replace [Imp] When using Find&Replace, "follow song" will be disabled, because it's pointless and unusable with "follow song" on. [Fix] Search&Replace didn't create an undo point. Pattern tab::Misc [New] New keyboard shortcut in pattern context: Duplicate pattern. [Fix] When in sample mode, samples were never stopped when in new-style note off mode, which lead to sample jam when using long/looped samples. Sample tab [New] Sample Undo. 100 steps per sample (independent), undo buffer is cut off at a tenth of physical memory (that would be 400 MB for a system with 4 GB of RAM). Cutoff size can be specified by setting UndoBufferSize (in Megabytes) in section [Sample Editor] of mptrack.ini. [Imp] When creating a new sample using "resize", sample loop is activated automatically. [Imp] When sample is 8-bit, it will automatically be converted to 16-bit when applying time stretching / pitch shifting. [Imp] Can now enter insanely high values into sample frequency input field (as they are supported by Impulse Tracker), allow only 65536 Hz for S3M files. [Mod] Removed time stretcher's / pitch shifter's preview function as it's unnecessary now. [Fix] Insert Silence: Loop points were not updated when adding silence at the beginning of the sample [Fix] Actions such as time stretching and undo could trigger sample play. Instrument tab [Fix] When playing an instrument and disabling its envelopes at the same time, the toggled envelopes are stopped (prevents filter envelope from turning into a pitch envelope). [Fix] Sample map was broken when dealing with sample indexes greater than 255. [Fix] Update plugin list properly when cleaning up plugins while being on the instrument tab (possibly also improves instrument tab behaviour when working with multiple windows). Instrument tab::Envelope editor [New] Envelopes can be edited using keyboard. Various keyboard shortcuts have been added to move and edit envelope points. This uses a common "drag and drop" node with mouse editing, so a point can first be clicked and the be moved with e.g. cursor keys. [Imp] When creating a new envelope, automatically enable it as well. [Imp] Mark currently selected envelope node yellow for better visibility when using keyboard editing. [Mod] Middle line is also shown for volume envelope. Comments tab [Imp] If sample size is < 1 KB, amount of bytes is shown instead of "0 KB". [Fix] The lower part of the tab was receiving update messages that were not even meaningful to this tab (e.g. speed changes), so it was updating quite often with modules that have alternating speed and the toolbar was "blinking". Tree view [New] Show sequences in song tree view. Sequences can be inserted, duplicated and deleted by right-clicking the sequence items. [New] Clicking on a mod item (i.e. a filename node) switches to the corresponding window. [New] Added right-click options for mod items. [New] Display playing samples / instruments (only those that are assigned to a sample) using green triangles. Can be enabled from setup screen. [New] Muted samples and instruments are shown with a different icon. [Imp] Can now dragondrop orders, even between sequences. [Imp] Double-clicking order items and pattern items works as intended now. [Imp] Show whole sequence (don't stop on first "---" item). [Imp] Switching between sequences is a bit easier now. There's a context menu entry for it and double-clicking on an empty sequence will switch to it (as there are no orderlist item to click on). [Imp] Different icons for effect / instrument plugins VST / MIDI mapping [Imp] Plugins Selector: Different icons for effect / instrument plugins. [Fix] When moving around plugins, param control notes are now also updated. [Fix] MIDI mapping: Pattern record checkbox wasn't updated properly. [Fix] MIDI mapping: Shift key erroneously opened MIDI mapping dialog in some cases. However, it does not work properly with all plugins anymore (e.g. sliders in Synth1 are not shift-clickable anymore) Mod conversion [Imp] When converting a song that has subsongs to MPTM format, the user is asked if those subsongs should be converted into multiple sequences. [Imp] If possible, all MPTM sequences will be merged into the first sequence. This also tries to fix patterns with Bxx effects. [Imp] Better conversion of MOD / XM E4x / E7x command. [Imp] Better conversion of note off commands when converting to .mod. [Imp] Removing channel features (pan/vol) in formats where they're not supported. [Imp] Insert pattern break commands when resizing patterns to 64 rows that were smaller. [Imp] Changing between MOD and XM format limits speed / tempo commands (Fxx) properly now. [Imp] Trim sequence if it's too long (e.g. in MOD format). [Imp] Remove sample vibrato and sustain loops for MOD / S3M. Playback (see also format-specific changes below) [Imp] Added some more standard playback frequencies (176KHz, 192KHz) to setup. [Fix] When jumping around in a module, high offset value is also memorized. IT::Saving [Fix] Original IT specs concerning max orders/patterns were wrong. IT can handle up to 257 orders (as the last order is always ---, so it's actually 256 accessible orders), so the saving routines were also updated a bit. [Fix] Save at least 2 order items. [Fix] IT files with empty sample slots made with MPT will now FINALLY save correctly in Impulse Tracker. [Fix] Compatibility Export: Don't store "extended filter range" flag. IT::Loading [Imp] Removed unnecessary / wrong pre-amp limits. [Fix] IT files with global volume 0 are now loaded correctly. [Fix] In some very rare (almost only theoretical) cases, the last IT instrument would not be loaded in previous versions. Use correct instrument header size (1.xx or 2.xx header) for comparison when loading instrument headers. IT::Compatible Playback Mode [Fix] Reset NNA actions on every note (tentative fix, fixes spx-farspacedance.it). [Fix] Fixes from SchismTracker: Vol Swing, Pan Swing, Pitch / Pan Separation (PPS). [Fix] Out of range offset command with Old FX on. [Fix] Improved S3x / S4x / S5x handling. S3M [Fix] ST3 compatibility: Only allow waveforms 0 to 3 for S3x / S4x / S5x. [Fix] The S3M format actually knows muted channels. This was not taken into account before. XM::Loading [Imp] Allow to load modules with an empty orderlist (as they are, in fact, valid XM files). XM::Compatible Playback Mode [Fix] Almost perfect arpeggio emulation (only a few notes are still wrong). Thanks, Ian Luck! [Fix] Rogue note delays are now retriggering the instrument. [Fix] Perfect emulation of buggy Rxy behaviour. Thanks to Ian Luck for helping me with this. [Fix] Command X ModPlug extensions are now ignored in FT2 compatibility mode. MOD [Imp] Mod Creation: The default empty order list was too long, allowing for overly long songs to be created which would then not be saved correctly. [Fix] Mod Creation: MOD Panning scheme is now set up correctly. [Fix] Loading: 8Chn Startrekker modules ("FLT8") are loaded correctly now. MOD::Playback compatibility [New] Added song flag "ProTracker 1.x Mode" (for .MOD files) that enabled on-the-fly sample swapping as ProTracker did it. 8xx and E8x panning commands are also ignored in this mode. [New] Support for the EFx command (Invert Loop). One has to pay attention when working with this command as it effectively trashes samples. Module cleanup [New] New cleanup feature: Merge sequences. [Imp] Pattern Cleanup does now also work with multiple sequences. [Imp] Improved cleanup dialog, with new options (remove all *, optimize samples). MP3/Wav export [New] Wave Convert: Normalization is back as experimental feature. [New] Wav/MP3 export: Show estimated remaining time. [Imp] MP3 export: Removed 60 minutes limit. [Fix] MP3 export: Fixed possible issue with very long mod files (such as Skaven's "Beyond the Network"). [Fix] Wave Convert: The wave convert dialog had two default buttons, one of them (the "default default button") didn't make sense. Colour setup [New] Channel separators can now have custom colours. [New] Can now specify the blend colour for prev/next patterns. [Mod] Renamed FT2 and IT presets to "Blue" and "Green", as they did not resemble FT2 and IT in any way. [Mod] Added VU Meter colours for the pattern colour presets. [Mod] Changed the "Buzz" colour scheme a bit. [Fix] When loading colour presets that have less colours are defined than required, the missing colours will be replaced by those from the "MPT" preset. [Fix] When no INI file was present, channel separators were completely black. Keymaps [New] Three new keymaps: French Laptop by Paul Legovitch, Norwegian MPT Classic by Rakib, US_mpt_classic_(snu). [Mod] Updated DE_jojo.mkb. [Imp] When loading a keymap file and unrecognized lines are found, only one message box is shown. [Mod] All keymaps have been updated to version 1 and updated to contain the orderlist shortcuts. [Fix] Keymap files have a version number now (currently version 1). If keymap file doesn't have a version number (that's version 0), the orderlist keys will be added automatically so that orderlist remains usable in new builds. Tuning [New] Can import scl-files. Upper limit for note count is 64. [Imp] Tuning dialog: Using the default tuning path as default path for Import/Export dialog Module format support [New] Can now import RIFF AM and RIFF AMFF files, as well as J2B (Jazz Jackrabbit 2 music) files, which are compressed AM(FF) files. [New] Can now import PSM16 files (Silverball, early versions of Epic Pinball). [Fix] MED Loader: Possible error when loading orderlist. [Fix] MDL Loader: Various fixes (taken from Schism Tracker). [Fix] IMF Loader: Slightly wrong instrument loader (this for once didn't break anything, though). [Fix] AMF Loader: Effect handling was slightly broken. Misc [Imp] All Loaders: Fixed string handling to filter out all null chars in song/sample/instrument/etc. names. This avoids "empty" instrument names that occured in a couple of .IT files before. [Imp] Main window: Extended paste mechanisms (mix, flood, push forward) have been moved into a sub menu. [Imp] Main window: Improved accelerator keys in the edit menu. [Imp] Added "split keyboard settings" dialog to the "edit" menu and updated the shortcuts there (goto was missing). [Imp] SoundTouch: Update to version 1.5.0. [Mod] Store configuration and tuning files in %APPDATA% if possible. Can be disabled by adding UseAppDataDirectory=0 to [Paths] in mptrack.ini ("portable mode"). [Mod] Mod Creation: When clicking on the "new" button, the newly created module will be of the same type as the currently active document. Should probably be an option. [Mod] Made Graph and Pattern Randomizer shortcuts invisible, as they are useless. [Mod] Compatibility Export: Use module working directory in "save as" dialog. [Mod] Using MS Shell Dlg font instead of MS Sans Serif in resource file. [Mod] Changed some "ModPlug Tracker" strings to "OpenMPT". [Fix] When using a Load/Save dialog, MPT's key handler is now disabled so that common shortcuts like F2, Ctrl+C, Ctrl+V, Esc. etc. can still be used. [Fix] Mod Loaders: Very short sample sustain loops are now also accepted (fixes ckabsenc.it). [Fix] Mod Creation: Filling the whole mod title field with null bytes on creation to avoid funky characters in other programs. [Fix] Fixed possible issue with "long" (12 characters) instrument filenames. [Fix] Autosave: 'Modified since last autosave'-flag wasn't always updated. [Fix] Fixes to handling of 32 chars long instrument name. v1.17.03.02 (22 September 2009, revision 371) internal test build ----------------------------------------------------------------- General tab [Imp] Song Settings dialog: Added suffixes "IT" and "S3M" to some mod flags for more clarity. [Fix] Song Settings dialog will revert play flags to previous values if user presses the Cancel button. [Fix] VSTi / Sample volume sliders only go up to 255 instead of 256. [Fix] Document will now be set modified when moving or inserting plugins. Sequence editor [New] Multiple orders can be selected in the pattern sequence. At the moment, it is possible to insert, delete, duplicate and dragondrop multiple orders. [New] Added context menu item "Render to wave", to render one or more patterns to wave. Pattern tab [New] Paste will now optionally continue on next pattern (overflow paste option). [New] Channel reset (stops note, sets initial chn settings). Available from channel header context menu and new key binding. [New] When shift-clicking somewhere, a selection will be drawn from the previous cursor position to the new position. [Imp] Showing descriptions of "special" notes in the statusbar, like it's done for effects. [Imp] Shrinking patterns is now also possible with patterns < 32 rows. [Imp] Solo/Unmute context menu has a bit more dynamical transition menu points (experimental). [Imp] Added some checks to prevent entering notes which are not supported by the module type. [Mod] Entering note with row spacing enabled can now move cursor to next pattern if continuous scroll is enabled. [Fix] Inserting a new pattern won't resize it to 32 rows anymore if the current pattern has less than 32 rows. [Fix] Offset and Velocity volume commands are displayed in default colour instead of "pitch" colour. [Fix] Fixed weird combination of context menu shortcut and "always center active row" being disabled (http://forum.openmpt.org/index.php?topic=3203.0). [Fix] Keyboard split note was off by one. [Fix] Increased max. row spacing / skipping value to 64, values > 64 are now visibly clamped to 64 in the edit box. Pattern tab::Note properties [Imp] Added description to high offset command in note properties dialog. [Imp] 7-Bit Panning slider also has the "Surround" state in S3M format now. [Imp] Proper display of Pxy effect in the note editor window. [Imp] Explanation for Tremor effect. [Imp] Completed descriptions for extended MOD/XM, fixed display of several effects. [Imp] Added description for S1x - Glissando Control. [Fix] When double-clicking on a note in the pattern editor, the noteMin offset was not taken into consideration, which lead to wrong information for some formats. Pattern tab::Find/Replace [Imp] Don't reset "replace all" flag after every search. [Mod] "Search in whole song" and "Replace all" are now enabled by default. [Fix] Replacing also works with high instrument numbers now. Also, empty instrument numbers won't be affected by "ins+1" anymore. [Fix] Notes that cannot be used in the given format are not shown in the dropdown combo. [Fix] Made comboboxes more convenient to use. Pattern tab::Macro config [Imp] Also show the current preset for Zxx config (Z80 - ZFF). [Fix] "Show All" FX display index now starts at 1 instead of 0, like all other FX enumerations (tx Rakib). Sample tab [New] Sample drawing. [New] Add silence to sample. [New] Resize sample (same dialog as "add silence") [New] Can now play sample from given position with Ctrl + left mouse button. [New] DC offset removal. [New] Batch export samples (shift + click on "save sample" icon). [New] Added setting "FinetuneStep" to mptrack.ini section "[Sample Editor]". [Imp] Better loop point handling when deleting sample selections. [Fix] Limit sample vibrato fields properly. Vibrato Sweep ranges from 0 to 255 now. [Fix] Remove special chars from sample filenames so the "save as" dialog will show up on OSs < Vista. [Fix] When using the spin control, frequency is not clamped to [2000, 96000] anymore. [Fix] Removed tuning from up/downsampling for MOD files which detuned them when saving. [Fix] Transpose is now disabled when using MOD format. Instrument tab [New] Envelope points can now be added by shift-clicking somewhere in the envelope editor. Middle mouse button click removes the nearest point. [Imp] Sample map shows tuning-specific notename on context menu. [Imp] Added "Map all notes to " to instrument mapping context menu. [Mod] Also show values from 0 to 64 for filter envelope (instead of -32 to 32). [Fix] Pitch/Pan input field allows negative values. [Fix] Proper limits for IT/XM fadeout values. [Fix] Playing correct note in the instrument mapping control (notable difference when editing the scale from bottom to top). [Fix] No relative values are shown for envelopes with no release node (status bar) (tx xaimus). [Fix] Remove special chars from sample filenames so the "save as" dialog will show up on OSs < Vista. [Fix] Fixed crash in instrument view that occured if RowsPerBeat was 0. [Fix] Fix to crash that occurred when multiple windows had instrument tab of the same document open. Comments tab [Imp] Default view mode is instruments instead of samples for XM files. [Imp] Instrument / Sample list: Double click will switch to instrument / sample. Tree view [Fix] Playing sounds from a soundfont was broken. [Fix] Deleting patterns from a module will also reset their names. VST / MIDI mapping [New] Editing a plugin param in its editor while holding shift key will now open MIDI mapping dialog. [New] Can now record MIDI mapping changes to pattern. [Mod] Changed host IDs and a couple of related return values. If compatibility problems occur, old IDs can be set with INI settings ("HostProductString", "HostVendorString", "HostVendorVersion" in section "[VST Plugins]"). [Fix] Some minor tweaks and fixes to the MIDI mapping dialog. Mod conversion [Imp] Convert E9x to Q8x as Q0x actually means "continue" and not "no change" for the volume change. [Imp] Even better conversion of various pattern effects, including 7 / 8-Bit Panning, Surround, Note Cut / Off / Fade conversion, MOD retrigger, XM->IT volume column limitations, illegal notes). [Imp] Proper conversion of Pxy effect. [Imp] Full volume column conversion, resetting default global volume / tempo / speed for MOD files. [Imp] \xx is converted to Zxx when converting to / saving S3M files or "compatible" IT files. [Imp] Somewhat decent conversion of Kxx (Key Off) from XM to S3M / IT. [Imp] Trim instrument envelopes if they're too long for the new format. [Imp] Convert 500/600 commands properly from MOD to any format, Adjust sustain loops for XM files. [Imp] Try to use fix commands that don't have a "memory" (00 value) in XM (Arpeggio) and MOD format (Arpeggio and a few others) by using the previous value. Playback (see also format-specific changes below) [Imp] Mixing: It's now possible to go down to 1ms latency (works with ASIO). [Imp] If restart position is 0 and a sub tune is played (i.e. a tune separated with a "---" pattern), OpenMPT will now try to jump back to the first order of this sub tune instead. [Imp] Added option to not reset all channels and variables when looping a module. [Fix] 4-Bit panning didn't disable surround sound (fixed in compatibility mode in IT/MPTM/XM). [Fix] Don't ignore value of pattern break commands on last pattern anymore. MPTM [New] New experimental parameter controls (Parameter Control Events) for controlling plugin params. [New] Can now have multiple sequences in a module (access from orderlist context menu). [New] Allow up to 240 envelope points. [New] IT "Note Fade" command: This existed in IT's player routines already, but there was no way to actually use it in the editor. Triggering an invalid note would cause a note fade, so this is a new note type. [New] Channel settings(vol&pan) for channels after 64 will now be saved in the file. [New] MPTM command S7D explicitely enforces pitch envelope, S7E enforces filter envelope. IT [New] IT "Note Fade" command: This existed in IT's player routines already, but there was no way to actually use it in the editor. Triggering an invalid note would cause a note fade, so this is a new note type. IT::Saving [Imp] The row highlighting fields in the IT header are now used. [Imp] Compatibility Export: Save with custom "tracker version" header field (same as for S3M). [Imp] Compatibility Export: Removed stereo sample support. [Fix] Compatibility Export: Ignore new MPT effects. [Fix] Compatibility Export: Doesn't screw up patterns anymore if the module has more than 64 channels. [Fix] Compatibility Export: Changes various version numbers and settings in compatibility export to better match Impulse Tracker made IT files. [Fix] Limit fadeout values properly. [Fix] Channel settings(volume & panning) for channels after 64 will now be saved in the file. IT::Loading [Imp] Can now load IT files with very small patterns (< 4 rows). [Imp] Setting the "last saved with" version to 1.16 (instead of "created with") if module seems to be made with the old MPT. [Imp] Detect more versions of MPT that did stupid things (can be seen in the "last saved with" field). [Imp] Row highlighting in IT header is now recognized. [Fix] Unset release envelope nodes for IT files made with IT 1.x, fix fadeout values. [Fix] Proper adjustment of sample pre-amp. [Fix] It is now possible to load IT files that have no samples. [Fix] 31 BPM is an allowed default tempo. Tentative fix: Clamp to 32 (instead of 125). [Fix] OpenMPT was loading the volume column command hx (vibrato depth) as ux (vibrato speed) and also saving it like this. In the pattern editor, ux was allowed, hx was not but it should be the other way around. Now, hx is always used but ux is still loaded correctly for old modules made with MPT/OpenMPT. IT::Compatible Playback Mode [Imp] More improvements to Vibrato, Tremolo and Panbrello. [Imp] Retrigger (Qxy) works like in Impulse Tracker now (test #15). [Imp] Tremor (Ixy) works like in Impulse Tracker now. [Fix] Better sample vibrato compatibility. Vibrato Sweep isn't perfect yet, though. [Fix] Offset beyond sample range. [Fix] Don't reset Tremolo on new note, don't ignore tremolo if note volume is 0. [Fix] Ignore S[345]x with x > 3. [Fix] Multisample instruments change with no entry in the instrument column (fixes spx-shuttledeparture.it). [Fix] Pattern loop count won't be reset on pattern transition (fixes gm-trippy01.it). [Fix] Tempo slides won't exceed 255 BPM in compatible mode. [Fix] Random vibrato, tremolo, panbrello waveforms (test #19). [Fix] Fixed handling of pitch / filter envelope loops (test #24). [Fix] Panning effects (Xxx, S8x, pxx) override pan swing (test #20). [Fix] SD0 / SC0 is now interpreted as SD1 / SC1. (test #22). [Fix] Portamento up / down resets the destination of tone portamento (test #23). [Fix] Out of range global volume, per-channel global volume slides. S3M::Saving [Imp] Orderlist is now as small as possible (multiple of 2 instead of multiple of 16); Using ST3's default UltraClick value. [Imp] Using an own version number in the header now, just like all the other trackers. [Fix] Ignore new MPT effects. [Fix] Patterns are now saved correctly. Previously, the last few rows might have come up as garbage in ST3 when they were empty. [Fix] Clamp sample pre-amp to [32;127] instead of just taking the lower 7 bits (Default pre-amp value was 128, which resulted in pre-amp 0 when saving). S3M::Loading [Imp] Smarter Zxx conversion without message box (heuristic detection). [Fix] Minimum sample preamp value is now 16 (like in ST3). [Fix] Small modifications to pattern loader to load somewhat broken S3M files (fix from xmp). [Fix] Don't reset global volume to max if it is 0 for S3M modules made with ST3.20 or newer. [Fix] Disable loop for sample with very short loop at the beginning. [Fix] Samples with very short loops (2 bytes) will now load correctly. This fixes for example 94hitmix.s3m and spectral.s3m. S3M::Misc [Fix] Module Creation / Loading: Sane default volume settings for MOD / S3M files again (128 global volume, 48 sample volume) [Fix] S3M compatibility: Notes with SD0 are now ignored, SC0 is completely ignored XM [New] Compatibility Export. [New] FT2 compatible playback mode. XM::Loading [New] Compatibility mode is automatically enabled for XMs not made with MPT. [Imp] Make XMs with strange pattern header sizes load correctly (removed some code that was there to make really, really broken XMs load - would this have worked at all?). [Imp] Setting the "last saved with" version to 1.16 (instead of "created with") if module seems to be made with the old MPT. [Fix] Various changes to make XMs that have been compressed with BoobieSqueezer load correctly. [Fix] Can now load XM version 1.02 and 1.03 (rare). [Fix] Don't ignore last pattern anymore if an XM file has no instruments. XM::Saving [Imp] Compatibility export: Export cuts off channels > 32. [Imp] Setting "OpenMPT " in the "made with" field (as any other tracker put their signature in here as well). [Fix] Always save with a channel number that's a multiple of two so FT2 will load the file correctly. [Fix] F20 won't turn into G20 anymore. [Fix] Limit fadeout values properly. [Fix] More intelligent conversion of Speed / Tempo commands. XM::Compatible Playback Mode [Fix] Portamento + New Note with no previous note, Offset beyond sample range. [Fix] More compatible "Note Off + Something" actions. [Fix] Note Off with instrument number causes fadeout for samples that have no envelope. [Fix] Volume command Ux should not enable Vibrato at all, it only sets the vibrato speed. [Fix] Pxy effect was too deep. [Fix] Using MilkyTracker's arpeggio logic for better XM arpeggio compatibility - still not perfect! [Fix] Tempo slides won't exceed 255 BPM in compatible mode. [Fix] In compatibility mode, retrigger with vxx on the same channel will always reset the retriggered note's volume. [Fix] More compatible handling of Kxx effect. [Fix] Pattern loops are now handled correctly (using compatibility switch). [Fix] Out of range global volume, local global volume slides. MOD [Imp] Module Creation: MOD files have 4 channels by default. [Imp] Moved loop length check from compatibility export to normal save. There you go, Amiga users! :) [Fix] Module Creation / Loading: Sane default volume settings for MOD / S3M files again (128 global volume, 48 sample volume). [Fix] Inserting more than 128 orders in MOD format is not possible anymore. MOD::Loading [Fix] Last pattern was not loading in .MODs that have no samples. MOD::Saving [Fix] The compatibility export was only working properly for 8-bit mono samples. [Fix] More intelligent conversion of Speed / Tempo commands. [Fix] F20 won't turn into G20. MOD::Playback compatibility [Fix] Using 8-Bit (800-8FF) Panning instead of 7-Bit panning (800-880) now - fixes e.g. DOPE.MOD. [Fix] Pattern loops are now handled correctly. Setup [New] New default directories: plugins and plugin presets. [New] Button to reset ramping and resampling to default values. [New] Shareable colour schemes (via config dialog). [Imp] Added note to "always center active row" hint that this is required to be enabled for greyed out patterns. [Mod] Changes to default general options configuration. Module format support [New] Can now import IMF (Imago Orpheus) modules. [New] Can now import GDM (General Digital Music / BWSB sound system) files. [Fix] A brand new PSM loader! Ditched the old and buggy loader as the new loader works way better, it can even handle modules from Extreme Pinball. [Fix] 669 Loader: Small modification so corehop.669 can be loaded; Note: Loader is still buggy like hell. Misc [New] Compo cleanup. [New] Rearrange samples is back! And this time, it's even fully functional! [Imp] XI Saver: Fill out the "created with" field properly (OpenMPT instead of FastTracker 2). [Imp] MP3 export: Write ID3v2.4 instead of ID3v1 tags. Includes various changes to length limits, genre limitations and what's written in the tags. [Imp] Mod Specs: Decreased minimum pattern size for XM and IT format to 1 row. [Imp] Mod Specs: It is now possible to have modules with 1-3 channels, as this only seems to cause trouble with MOD files (so they still have 4 channels minimum of course). [Imp] Autosave: If a module has not been changed since the last autosave, it will not be autosaved. [Imp] Module loader: If plugins are missing, a single message box is shown. [Imp] Slight redesign of the WAV / MP3 export dialogs. [Imp] LHA Decoder: Several fixes [Mod] Default keybings are now included in the executable, so default keybindings are available even without external keybinding file. [Fix] Menus: Added mnemonic keys again and replaced the last(?) remaining "Midi" labels by "MIDI". [Fix] Wav Export / Channel Manager / Pattern Editor: Channel names with leading space char are now accepted. [Fix] General tab / Main bar / Loaders / Conversion: Fixed arbitrary speed limits (64 on general tab, 127 on main bar). [Fix] Keyboard manager: Octave offset for key descriptions is now C, not A. [Fix] Patterns: Reset pattern name when deleting pattern. v1.17.02.54 (24 June 2009, revision 274) ---------------------------------------- [Fix] Pattern tab: It's now possible to use the old note fade behaviour when playing notes (see setup->general). (rev. 267) [Fix] Pattern tab: Fixed wrong interpretations of "Old style pattern context menu"-option. (rev. 267) [Fix] Misc: Some internal fixes. (rev. 267) v1.17.02.53 (17 May 2009, revision 259) --------------------------------------- General [New] Can now import MO3 files using external library. (rev. 248) [Fix] Song Cleanup: Sample cleanup should no longer remove data after sustain loop end point. (rev. 248) [Fix] Misc: When adding channels from song properties, new channels are now initialized properly (http://forum.openmpt.org/index.php?topic=1814.0). (rev. 236) [Fix] BPM approximation showed wrong rows per beat in some cases (http://forum.openmpt.org/index.php?topic=2532.0) (rev. 231) [Fix] Disabled special handling of '&'-character when drawing texts to various components where the special handling should not take place (http://forum.openmpt.org/index.php?topic=1962.0). (rev. 229) [Fix] File opening: Added a couple of return value checks to reduce the change of crash when opening lots of files (http://forum.openmpt.org/index.php?topic=2546.0). (rev. 239) [Mod] Menu: Goto dialog can now be opened from Edit-menu. (rev. 246) [Mod] Pattern cleanup: Clearing sequence after first '---' item is now optional. (rev. 239) [Mod] When passing MIDI to plug, documents will now be set modified since MIDI data may change parameters. (rev. 243) General tab [Mod] General tab: VSTi volume slider is now disabled for S3M. (rev. 246) [Mod] General tab: Initial channel volume controls are now enabled only for IT and MPTM. (rev. 246) Pattern tab [New] Added descriptions of SBx, S3x, S4x and S5x command parameters to note properties dialog. (rev. 251) [New] Descriptions to retrigger note command parameters in note properties dialog. (rev. 248) [New] Ability to start playback with incoming MIDI note (see Setup->MIDI) (rev. 246) [New] Duplicate channel (see channel header context menu). (rev. 246) [New] MIDI controllers can now be used to input smooth MIDI macro commands to pattern (Setup->MIDI). (rev. 240) [Fix] Undo should now work with chords. (rev. 244) [Fix] When playing with MIDI keyboard, plugins got a constant note velocity, not the actual velocity (http://forum.openmpt.org/index.php?topic=2754.0) (rev. 239) [Fix] Undo fixes (didn't properly handle playback positions/multichannel record, set redundant undo points)(rev. 243) [Fix] Param record in plugs GUI wrote commands even when pattern record was off. (rev. 243) [Fix] Fixed chord detection when row spacing was enabled. (rev. 243) [Fix] Fix to displaying wrong pattern name when using more than 255 patterns (http://forum.openmpt.org/index.php?topic=2344.0) (rev. 212) [Fix] Accidental moving when selecting order in margins shouldn't happen anymore. (rev. 225) [Fix] Fix to possible crash when using undo after pattern resize (bug introduced in rev. 168) [Mod] When applying "change instrument", an instrument number won't be added to note off/cut anymore if the note doesn't already have an instrument. (rev. 248) [Mod] Default orderlist margin value can now be controlled with "DefaultSequenceMargins" ini-settings under "Pattern Editor" context. (rev. 225) [Mod] Sequence view: Sequence scrolling won't no longer be cut on first '---' item on IT / MPTM / XM. (rev. 237) [Fix] Pattern: The keyboard split "feature" when entering chords is removed (http://forum.openmpt.org/index.php?topic=2790.0). (rev. 244) Sample tab [New] Can now normalize sample selections. (rev. 254) [New] Can now optionally normalize all samples instead of just one (click normalize with shift down). (rev. 249) [New] Status bar now displays Oxx / 9xx offset value at current mouse cursor position. (rev. 232) [New] Sample amplify now accepts negative values (inverts sample phase) (http://forum.openmpt.org/index.php?topic=2219.0). (rev. 234) [New] Signed/unsigned sample conversion. (rev. 235) [New] Added button for phase invert to toolbar. (rev. 235) [New] Ability to save sample as raw. (rev. 236) [Fix] Fix to zoom-related crash when loading samples in sample tab. Occurs usually with lengthy samples. (rev. 211) [Fix] Playing sample selection didn't work properly in all cases (http://forum.openmpt.org/index.php?topic=1700.0). (rev. 231) [Fix] Setting loop points could affect playing of sample even if loop was disabled (http://forum.openmpt.org/index.php?topic=1874.0) (rev. 231) [Mod] Notes from MIDI are now handled the same way as notes from keyboard when making sample selections. (rev. 246) [Mod] Play sample button now stops previous note even if mod is playing (http://forum.openmpt.org/index.php?topic=1366.0) (rev. 231) [Mod] Sustain loop will now be enabled when setting it to sample selection. (rev. 231) [Mod] Sample editing: If possible, use loop points as trim limits if there's no selection chosen. (rev. 230) [Mod] Time stretching is now implemented with SoundTouch library. (rev. 228) [Mod] Disabled pitch shifting / time stretching of 8-bit samples (didn't seem to work). (rev. 228) Instrument tab [Mod] Sample map can now map "No sample". (rev. 236) [Mod] Changed default instrument plug volume command handling from Dry/Wet to none. Also added INI setting with which one can set the default value used for new instruments. INI setting is "DefaultPlugVolumeHandling" in [Misc], possible values are 0,1,2. (rev. 238) [Fix] Envelope view: Middle line will now be drawn in panning and pitch/filter envelopes even if row guidelines are enabled. (rev. 254) MPTM [Fix] Pattern cleanup: In some cases sequence wasn't cleaned properly for mptm. (rev. 239) [Mod] Changed pattern/order limit for MPTm from 65000 to 4000. (rev. 212) MPTM Instrument tuning [New] Added letter 'b' to drawable letters. (rev. 217) [Mod] Notes should now be drawn more clearly when using custom tunings. (rev. 217) [Fix] Creating 'group geometric' was broken (perhaps since v. 1.17.02.49) (rev. 252) [Fix] Loading certain old tuning objects didn't work. (rev. 238) IT [Fix] Macro config should now be loaded correctly also when loading IT files not made with MPT. (rev. 257) [Fix] When file was saved with compatibility export, the last order was not shown in Impulse Tracker. (rev. 257) IT::Compatible Playback Mode [Fix] Playback fix to vibrato with ramp down waveform. (rev. 257) XM [Fix] Dxx effects that are to the left of a Bxx effect are now ignored. (http://forum.openmpt.org/index.php?topic=2769.0) (rev. 241) S3M [Fix] S3M Saving: Sequence of length 241-255 should now be cut to length 240 instead of 16. (rev. 239) [Mod] S3M Saving: Saved sequence is no longer cut on first '---' item. (rev. 239) [Mod] When loading S3M files which contain Zxx effects, user is now asked how to process them. (http://forum.openmpt.org/index.php?topic=2166.0) (rev. 233) MOD [Fix] Fixes to MOD saving: it should now be possible to create ProTracker compatible MOD files with compatibility export. (rev. 256) Package template [Mod] Updated DE_jojo.mkb keymap. Misc [Fix] Fix to faulty portamento handling on loading AMF. [Fix] Lots of smaller bug fixes. v1.17.02.52 (14 Apr 2008, revision 210) --------------------------------------- [Fix] Shouldn't need winhttp anymore (at least now that updatecheck is disabled). Dependency caused problems in Win98. [Fix] Fix to faulty plug file existence check (introduced in 1.17.02.51) (http://forum.openmpt.org/index.php?topic=2255.0) [Fix] Sound card-options buffer length value validation. [Fix] In 1.17.02.51, muted channels were ignored completely in MIDI export. Now pattern effects are processed in muted channels. [Fix] IT style-playback fix v1.17.02.51 (29 Mar 2008, revision 208) internal test build ----------------------------------------------------------- [New] Unmute all(on transition) shortcutkeys should now work in orderlist context. [New] Half/double pattern rownumber buttons to pattern properties dialog. [New] Channel status in status bar now show channel volume info. [Mod] Modified flag is not set when sliding tempo/global volume slider for MOD file. [Mod] When setting instrument pan, checking whether instrument samples have set pan enabled and optionally disabling them. [Mod] Disabled Set Pan in sample tab for XM. [Mod] Show prev/next pattern now shows pattern over +++ orderlist items. [Mod] Disabled setting channel pan for MOD/XM in general view. [Mod] MIDI export won't anymore export muted channels (http://forum.openmpt.org/index.php?topic=2017.0). [Mod] When loading plug information at startup, checking whether the plug files exist (http://forum.openmpt.org/index.php?topic=1367.0). [Fix] Fix to crash when loading plugins with long (> 32 characters) parameter names. [Fix] Fix to possible memory corruption problem on handling VST plugins with more than 30 outputs. - Plugins with more than 32 outputs might still be handled poorly. [Fix] Fix to possible crash when browsing modules in tree view (http://forum.openmpt.org/index.php?topic=2222.0). [Fix] Fix to severe memory leak in the same section as above. [Fix] Fix to mptm not showing in tree view file browser. [Fix] Fix to MIDI drum export (http://forum.openmpt.org/index.php?topic=2024.0). [Fix] Fix to possible crash on MIDI export if exporting module with more than 64 channels. [Fix] When converting MOD->S3M/IT/MPTM, finetune setting was ignored (http://forum.openmpt.org/index.php?topic=1706.0). [Fix] IT compatibility: Fix to not resetting envelopes on new instrument (http://forum.openmpt.org/index.php?topic=1869.0). [Fix] IT compatibility: Fix to bidi loop resetting (http://forum.openmpt.org/index.php?topic=788.0). [Fix] IT compatibility: Fix to note trigger after note cut (http://forum.openmpt.org/index.php?topic=2080.0). [Fix] Mixmode tool tip in general tab was in some cases shown on unrelated controls (http://forum.openmpt.org/index.php?topic=2176.0). [Fix] Pitch/tempo lock was lost on first instrument when opening instrument tab for the first time (http://forum.openmpt.org/index.php?topic=1823.0). [Fix] Verifying buffer length-setting read from INI-file to prevent the impression that it can be set < 10 (http://forum.openmpt.org/index.php?topic=992.0). [Fix] Pattern paste was broken for MOD (probably since .46) (http://forum.openmpt.org/index.php?topic=1938.0). [Fix] Continuous pattern navigation fixes (http://forum.openmpt.org/index.php?topic=1960.0, http://forum.openmpt.org/index.php?topic=1959.0). [Fix] Keyboard split related fix (http://forum.openmpt.org/index.php?topic=1887.0). [Fix] Releasenode information should now be included when copying instrument envelopes (http://forum.openmpt.org/index.php?topic=1780.0). [Fix] Potential memory corruption bug when loading VSTs [Fix] Fixed MIDI mapping not checking MIDI event, which could cause events like pitch bend to trigger some mapping item. [Fix] Extended song/instrument properties were not always loaded correctly for IT (bug introduced in 1.17.02.50)(http://forum.openmpt.org/index.php?topic=2154.0). [Fix] Fix for wrong tabs being displayed when converting between module formats with and without instrument support (http://forum.openmpt.org/index.php?topic=1614.0). [Fix] Fix for possible crash on save/load when using more than 64 channels with MPTM. [Reg] Removed buggy rearrange samples (http://forum.openmpt.org/index.php?topic=2148.0). v1.17.02.50 (26 Jan 2008, revision 198) internal test build ----------------------------------------------------------- [New] MIDI controller mapping to plugin params. [New] Ability to take MIDI volume into account when playing notes. [New] Ability to pass MIDI to plug. [New] Ability to start/continue/stop play with certain MIDI messages (untested) [New] Ability to choose how volume commands behave for plugs. [New] Keyboard shortcuts for preset navigation jumps in the plugin editor. [New] Added ability to edit various flags in song properties. [Mod] MIDI CC bug related compatibility improvement for loading old IT/MPTm files. [Mod] .bak-files won't now be shown with "All modules" filter when loading modules. [Mod] MPTm made with this version will be recognized as IT in earlier versions. [Mod] Various validity checks for read data in ITP loading. [Fix] Fixed sending wrong MIDI message in ::MidiCC. [Fix] Default VST editor preset field name validation in the menu bar. [Fix] Fix for pattern duplicate for small patterns (http://forum.openmpt.org/index.php?topic=1747.0). [Fix] Fixed song properties-menu entry in mainframe(was greyed and didn't show keyshortcut) [Fix] Fixed crash with certain toolbar related ini-settings (http://forum.openmpt.org/index.php?topic=2033.0). [Fix] Further fixes to prevent unnotified overwriting of file. [Fix] Show row playtime didn't on certain cases work on first pattern row (http://forum.openmpt.org/index.php?topic=2044.0). [Fix] Fix to faulty play with certain instruments without notes in IT compatible playmode (http://forum.openmpt.org/index.php?topic=2080.0). [Fix] Pattern number box didn't open pattern properties when using MPTm (http://forum.openmpt.org/index.php?topic=2073.0). [Fix] Fixed wrong MIDI CC names in macro editor. [Fix/Mod] Setting volume to 0(v00) in pattern didn't necessarily set volume to 0 when using volume random variation for instrument. All other random variation behaviors are changed as well; now the 'swing' is applied directly to channel values instead of using swing addition, and by default the swing effect is reset on new note (http://forum.openmpt.org/index.php?topic=2074.0). v1.17.02.49 (17 Nov 2007, revision 194) internal test build ----------------------------------------------------------- [New] Improved VST preset navigation in VST window. Known problem: doesn't update if preset is changed from VSTs own preset navigation. [New] Improvements in IT compatibility playmode. When loading ITs, if file doesn't seem modplug made, then automatically setting IT compatibility playmode. The playmode setting can be toggled in song properties dialog, and the autodetection with an ini setting. [New] 'key binding not understood'-messages can be disabled with an ini setting. [New] Add name filter to plugin selection dialog. Useful when you have hundreds of plugins. [New] Allow Window key as a modifier in the keyboard configuration. Disables start menu pop-up when pressing the Win key iff it used in the active keyboard configuration. [New] Disables NumLock/CapsLock/ScrollLock lamps on keyboard iff they are used in the active keyboard configuration. The lamps will blink anyway - can't help it until we start using DirectInput. [Mod] Custom tuning related - file format changes - changed interpretation of finesteps: now zero finesteps means that finesteps are equal to notesteps, previously zero finesteps disabled portamentos etc) - Pitch slide between notes with portamentos is now specialised also for other tuning types than just geometric(changes behavior). Previously behavior was 'geometric' for all types. [Fix] Fixed wrong file version in IT compatibility save (http://forum.openmpt.org/index.php?topic=1723.0). [Fix] Fixed possible unnotified overwriting of file occurring for example when dealing with a new file (http://forum.openmpt.org/index.php?topic=1813.0). [Fix] Fixed broken note preview for certain type of instruments in instrument tab (http://forum.openmpt.org/index.php?topic=1996.0). [Fix] Fixed possible crash on channel mode wav export when a channel has a long name (http://forum.openmpt.org/index.php?topic=2005.0). [Fix] Fixed pattern position indicator jump when clicking VST-box in channel header (http://forum.openmpt.org/index.php?topic=2014.0). [Fix] Fix pattern search, which could search for the wrong param. Also enable typing of desired param value rather than only selecting from listbox (http://forum.openmpt.org/index.php?topic=1799.0). [Fix] Delay-load winhttp.dll and don't die if it can't be found, e.g. on Win98 (http://forum.openmpt.org/index.php?topic=1778.0). [Fix] Fix a couple of pixels on D# in the pattern editor small font bitmap (http://forum.openmpt.org/index.php?topic=1781.0). v1.17.02.48 ----------- [Mod] Pattern manager channel reordering behviour changes / fixes (http://forum.openmpt.org/index.php?topic=1148.0). [Fix] Fix song cleanup issue (http://forum.openmpt.org/index.php?topic=1711.0) [Fix] Pitch/Tempo lock fix (broken in .46 and .47) (http://forum.openmpt.org/index.php?topic=1646.0) [Fix] Fix bad horizontal scrolling in pattern editor when positioning the cursor with the mouse (http://forum.openmpt.org/index.php?topic=1650.0). [Fix] Fix odd "play row" behaviour when using 1 tick-per-row (http://forum.openmpt.org/index.php?topic=1038.0). [Fix] Fix pop due to ramping when song starts with a pattern command that sets a low global volume (http://forum.openmpt.org/index.php?topic=523.0). [Fix] Fix occasional colour issues with orderlist (http://forum.openmpt.org/index.php?topic=867.0). [Fix] Fix impossible horizontal scrolling in pattern editor when playing with follow song on. [Fix] Grey out "Trim" option in sample editor context menu if there's no selection (http://forum.openmpt.org/index.php?topic=908.0). v1.17.02.47 ----------- [Mod] Pattern skipping behavior returned to that of .45 [Fix] Save pattern scrollbar position when switching to other tabs. [Fix] If the cursor is moved but it is not on screen, move both horizontal and vertical scrollbars to make it visible. [Fix] Fix saturation on old modules (introduced in 1.17.02.46). Loading tracks with no saved mixlevel setting defaults to 'original'. Starting new IT, MPTM, ITP or XM defaults to '1.17RC3'. Starting new MOD or S3M defaults to 'original'. [Fix] Tree view FX list now starts with FX01 instead of FX00. v1.17.02.46 ----------- [New] An update checker has been added. Please report a bug if you have any problems with the update notification. [New] Experimental MPTm format: - Internally, it is still very close to the IT-based format. - Order&pattern limit increased to 65000; whole range not tested :) (Note that modeffects such as position jump doesn't cover the whole range unless the #-extension can be used(haven't tested)) [New] User definable tuning modes for instruments: - Only available for MPTm - Ratio value as well as note name for every key can be assigned individually; gives rather free hands for experiments. - Every instrument can have it's own tuning - Tunings can be saved to file and loaded from file. - IMPORTANT: When using tunings, behavior of various modcommands such as portamento have been changed, and new behaviors are still to be decided. [New] In song properties, option to increase playback compatibility with original Impulse Tracker behavior. Is in no way complete; currently affects only a couple of differences. Many differences are still there. [New] Ability to load multiple mods/samples/instruments from corresponding load dialogs. - Known issue: Intermittent failures. [New] 32-bit float wav import [New] Playback control additions: 'Solo on transition' & 'Mute on transition'. Available from pattern view context menu(right click). [New] Envelope points can be scaled by a factor through context menu on envelopeview(right click) [New] Calculator of playback time (measured from start) at the beginning of any row of any pattern (uses existing song length estimation). - Known limitation: When the row is within pattern loop, doesn't give all possible times. [New] SCx now sends note-off to VSTis at tick x. [New] New mixmode (called 1.17RC3): bypass global preamp, force soft panning, provide explicit dB value for sample attenuation. WARNING: this mixmode is subject to change. [New] Check for updates on startup. To disable, set CheckForUpdates=0 in mptrack.ini. [Mod] Channel states resetting when jumping between orders from orderlist. - NOTE: While this fixes a bug (behavior change) introduced in the tuning branch(?), it also changes quite prominent behavior so can annoy people - might need to be modified at some point. [Mod] Added version number to the mainframe title. [Mod] Changed the 'order message' at the bottom bar of the screen "Position x of y" to "Position x of y (x in hex of y in hex)". [Mod] Lots of smaller (internal) changes. [Fix] 24/32-bit PCM wav sample import fixed [Fix] Plugin list window remembers its position/size even on cancel. [Fix] Fix odd window position on very first startup (before mptrack.ini is created). [Fix] When opening instruments, load dialog didn't remember its previous path. [Fix] In general tab, it was possible to give longer modname than the fileformat could save. [Fix] Instruments associates with VSTis no longer also need to be associated to a sample in order to play. [Fix] Trash characters to empty ITP comments should no longer appear. [Fix] Channel state should now be updated correctly when e.g. moving channels through channel manager. [Fix] It should no longer be possible to remove all channels from channel manager. v1.17.02.45 ----------- [New] "Pitch to tempo lock" instrument setting: define the tempo at which your instrument loops correctly, and it will be pitched automatically to match the song's current tempo. [New] Notification when attempting to modify pattern but pattern record is off. [New] Orderlist margins: you can define how many slots to keep visible around the active pattern as the orderlist scrolls [Fix] Fixes for various unexpected pattern loop state changes. [Fix] Fixes to IT Style clear. [Fix] Memory management fixes and misc other bug fixes. [Fix] ITP loading fixed (I broke it in v1.17.02.44) [Fix] Time estimation fixed for tracks with pattern break+XParam. [Fix] "Last saved with" version number was not always saved correctly - fixed v1.17.02.44 ----------- [New] Added release section to volume envelope (see: http://openmpt.xwiki.com/xwiki/bin/view/Manual/InstrumentReleaseEnvelope). IT only. [Fix] Overflow fixes in file loading functions (see: http://aluigi.altervista.org/adv/mptho-adv.txt) [Fix] Greyed out irrelevant items in the orderlist context menu. v1.17.02.43 ----------- [New] You can now load up new plugins from anywhere, not just the General tab. Select "Plugin Manager..." from the view menu. This can also be assigned to a global hotkey. Limitation: currently plugins added to a song in this manner with always be put in the first empty slot. In a future version you'll be able to choose the slot directly from that window. [New] "Cleanup Plugins" to remove any plugs that are not associated to a channel and not used by an instrument and not used as an output for any used plugs. [Fix] Fixed channel limits. Should be able to correctly save IT pattern data with up to 127 chans. There's only space for 64 channel headers though (channel names etc..). XMs restricted to 64 chans. [Fix] Added channel limit check when adding chans from the pattern editor. [Fix] Fixed instant crash with SampleTank 2.1. v1.17.02.42 ----------- [New] "Compatibility export" in file menu: save as 'plain' IT, without all of OpenMPT's crap. IT only for now (not XM). [Mod] User now gets a warning when loading MDA Degrade (tx fisk0 - http://forum.openmpt.org/index.php?topic=467.0) [Fix] Set instrument in pattern editor should work when no note is specified (tx Torvus - http://forum.openmpt.org/index.php?topic=470.0) [Fix] Restart position saved in IT (tx LPChip - http://forum.openmpt.org/index.php?topic=473.0) [Fix] Loop song now works even if restart pos falls on +++ (tx LPChip - http://forum.openmpt.org/index.php?topic=463.0) [Fix] Last used tempo is applied even when playback is triggered from instrument panel. (tx LPChip - http://forum.openmpt.org/index.php?topic=480.0) v1.17.02.41 ----------- [New] Pattern record state is now saved to ini [Fix] Fixed the following settings that were not saving correctly: mod document window status, row spacing, channel VU meters, channel effect visibility, Most recent files list, Toolbar settings. [Fix] Process priority no longer defaults to high. v1.17.02.40 ----------- [New] Added indicator of currently playing pattern to orderlist. [New] 'Loop pattern' and 'follow song' keys should now work when orderlist has focus. [New] Removed registry dependencies. All settings will now be saved to ini file. [Mod] Code cleanups: removed old hotkey code [Fix] Correcly update orderlist position when cycling through patterns [Fix] Fixed orderlist GUI update on ctrl-transition when in patternloop mode [Fix] Moving a channel should now correctly take into account record-channels and pending mutes [Fix] Switching autodelay off in the options now works for note-offs as well. [Fix] Some mod-effects like 'pattern jump' and 'break pattern' no longer conflict with pattern loop toggling. [Fix] Fixed bad capping of random cutoff variation (tx LPChip) [Fix] Fixed crash on loading ITP with pattern names (tx Relabsoluness) [Fix] Fixed incorrect version number in saved files (tx Relabsoluness) [Fix] Improved screen position restoration (tx Snu, Waxhead) v1.17.02.39 ----------- [New] Remove and insert channels directly from pattern editor via channel header context menu [New] Toggle loop pattern playback mode with a shortcut key and a checkbox above the pattern editor [New] The automatic note delays that are inserted when recording notes live are now optional [Mod] Version number in executable properties now correlates with real OpenMPT version number [Mod] Restored solo/mute in pattern editor main context menu. [Fix] Fixed auto note delays so they work with S3Ms too [Fix] Fixes and improvements to displayed instrument name in pattern editor [Fix] Fixes and improvements to instrument swap from context menu [Fix] Plugins should never cause song to be marked as modified if their GUI is not open (tx LPChip) v1.17.02.38 ----------- [Fix] Fixed possible buffer overrun in VST event queue [Fix] Changed handling of VSTi noteoffs to reduce unexpected "interaction" between notes on different channels (a VSTi note-on in chan1 could sometimes be blocked by a VSTi note-off on the same row in chan2) (tx ganja) [Fix] No longer issue MIDI bank & program message every time MIDI channel changes - this fixes HyperCanvas behaviour (tx ganja) [Fix] Fixed: new channel mute mode did not mute VSTis at all. [Fix] Fixed: changing mute mode while some channels were muted prevented them from being unmuted. [Fix] Fixed: editing a pattern from tree view by double clicking it was broken [Fix] Editing of note column of sample map is disabled for XMs (XM doesn't save that data). [Fix] Fixed: If you agreed to reorganized instrument during an instrument cleanup, nothing at all would happen. [Fix] Fixed Pattern amplification had no effect on instruments mapped to "phantom samples" (tx lpchip) v1.17.02.37 ----------- [New] Added new mute mode which maintains sample synchronisation. Enable it in the global settings (last checkbox). [New] Added macro presets to control MIDI CCs in MIDI CC window. [New] Added configurable keys for Song Properties, Pattern Properties & Macro Configuration. [Fix] Fixed incorrect volume when receiving notes from MIDI-in when beyond keyboard split mark. v1.17.02.36 ----------- [New] Added "Pass keypresses to plug" option in plugin GUI options menu, to prevent MPT from stealing keypresses from plugins that need them. [New] More intelligent instrument dropdown box in patten editor will show sample name if instrument has no name, and instrument's plugin name. [New] volume commands without notes now send volume MIDI CC to plugs, but as far as I've seen, no plugs seem to respond to it. (turns out that this was broken from the very beginning.) [Mod] Disabled period cap to allow playback of notes below A-0 (experimental). [Mod] Leave unavailable loop options visible (but greyed out) in sample editor context menu, to avoid confusion (tx lpchip). [Mod] Clicking in the notemap will set the active note to be the one that was clicked on, rather than just movin up/down by 1. [Mod] Changing the note in the notemap will no longer move down one note. [Fix] Options menu on plugin GUI sometimes failed to show checked options after closing and re-opening the window. [Fix] Channel headers properly updated after moving them in the channel manager (tx anboi). [Fix] Fixed crash when interpolating with keyboard shortcuts with a selection spanning a single row (tx lpchip). v1.17.02.35 ----------- [New] Note delay (SDx) is written automatically during "live tracking" if there are no effects already on the existing row. [New] Preliminary parameter value recording should work a bit now with follow song on. Attempts to set correct macro if it exists. Will only overwite \xx. Does not work with certain plugs that don't give idle time back to the host during mouse down (e.g. Albino, Vanguard...), still trying to understand this. Please play with this & give feedback, but don't expect miracles yet. :) [Mod] Experimental: muting a channel with a VSTi playing should turn off the active note on that channel. [Mod] MIDI pitch bend reset on each new note for that instrument's MIDI channel. [Fix] Restored external 0-255 sample panning range with XM. v1.17.02.34 ----------- [New] Added dynamic instrument list for Change Instrument item in pattern ctx menu. [New] If you load a track with unrecognized plugins, you'll be prompted to search for the plugs on kvraudio. [New] Added "Clear selection" item in pattern ctx menu [Mod] Disabled it for users who have opted for the old style context menu in general settings, + other minor change. [Mod] Can now set an instrument value for notes which previously had no attached instruments. [Fix] Fixed rare crash on playback if playing a song with missing plugins. v1.17.02.33 ----------- [Fix] Fixed plugin exceptions introduced 1.17.02.31 (misplaced conditional caused bad ptr in audioMasterAutomate case). v1.17.02.32 ----------- [Fix] Fixed typo in solo fix in 1.17.02.31. v1.17.02.31 ----------- [New] Automatically generate a macro for a param by touching that param on the plug's GUI. To try it, select an unused macro from the plug GUI's Info/Macros menu, then touch a param. [New] Added "unmute all" custom key. ([New] Preliminary parameter value recording. Enable from plug GUI's Option menu. However it currently does not work correctly with follow song enabled: active mousing on a plug gui blocks the cursor, so all values get written in the same place. :)) [Fix] Restored original MPT behaviour: If the cursor is in the effect letter column, and a key is pressed that corresponds to no known effects, that keypress will be applied to the effect param column. And vice versa.(tx Emperor) [Fix] Tentative fix: Changed effEditIdle dispatching behaviour in an attempt to fix issue with Lounge Lizard (http://www.modplug.com/forum/viewtopic.php?t=3710) Please let me know if this breaks GUI refreshes for other plugs. [Fix] Fixed: Minor bug in search and replace - searching for "compoud" effects like SDx sometimes failed. [Fix] Fixed: It was impossible to preview simultaneous notes in the pattern editor (tx Emperor) [Fix] Fixed: Changing a param in default plugin GUI could result in a continuous param update cycle until the param value returned by the plug stabilised. [Fix] Fixed: Unsoloing a previously soloed channel resulted in unmute all if other channels had since been unmuted. :) v1.17.02.30 ----------- [Fix] Fixed drum program being offset by 1 on MIDI export. NB: MIDI import/export uses 0-127 range for MIDI program, whereas messages to plugins use 1-128 (0 is used to indicate that no program change is required). The MIDI import/export range should be adapted to use the 1-128 range at some point. v1.17.02.29 ----------- [Fix] Fixed 3 digit instrument numbers when there are less than 100 instruments. (http://www.modplug.com/forum/viewtopic.php?p=42006) [Fix] Fixed crash in plugin DNA/NNA check we transitionning between existing and non existing instruments. (http://www.modplug.com/forum/viewtopic.php?p=42006) v1.17.02.28 (official RC2 release) ---------------------------------- [Fix] Fixed sample editor display bug with "auto" zoom level. [Fix] Internal: project configuration changes. v1.17.02.27 ----------- [Mod] Minor cosmetic changes. [Fix] XMs saved in OpenMPT should no longer have a bunch of blank patterns at the end when played in XMPlay. [Fix] Some instrument properties were saved incorrectly if an instrument had been deleted (either from song cleanup or tree view). v1.17.02.26 ----------- [Mod] Plugins are no longer forcefully informed of samplerate on first playback if it has not changed since initialisation. This works around a problem we were having with Crystal where the voice oscillator type soundfont was reset on the first playback. NB: it still gets reset if you explicitly change the samplerate - we're probably still doing something wrong. Have asked Crystal developper. [Fix] Added volume ramping on global volume change in RC2 mix mode. Should eliminate most clicks on global volume change. Try increasing general ramping in the player settings dialog if it's still too clicky. [Fix] Arpeggio with XM was messed up because implicit transposes were not always taken into account. I introduced this bug shortly after touching the code for the very first time, over a year ago. :) I dread to think what will fall appart now this is fixed.. XM users, test away!! :) (tx LPChip) [Fix] Old IT files were loading with sample volume at 0. [Fix] Minor: Removed plugin clone button, corrected view menu to say "General" instead of "Global", Impulse Tracker version marker changed from "Impulse Tracker v3" to v8.88. v1.17.02.25 ----------- [Fix] In 117RC2 plugmix mode, applying global volume is now the last tranformation applied to the buffer. Should fix bugs in the last few builds by which global volume was taken into account multiple times. v1.17.02.24 ----------- [Mod] Removed broken CPU usage meter. [Fix] Global volume no longer applied twice on samples that are put through plugins. [Fix] If a plugin was assigned to a channel in which a note interrupted another, the resulting ramped part of the note would not be processed by the plugin. The outcome was potential "clicks". v1.17.02.23 ----------- [Mod] Changes to sample pre-amp and global volume defaults. [Mod] Internal: optimisations to volume handling. [Fix] Restored loop song on general tab. [Fix] Global volume is stored with our disfigured "XM"s. [Fix] Initial settings explicitly marked as such. v1.17.02.22 ----------- [New] In order to let the user achieve a good balance between sample and VSTi volumes, there have been changes & improvements to the volume handling, as exposed on the general tab: - Sliders available for "Sample volume", "VSTi volume" and "Global volume". - "Sample volume" is in fact the old sample pre-amp slider. Note that the slider can go up to 500 (which is already pretty loud), but if you're feeling insane you can type values up to 2000 in the textbox. - Changing the VSTi volume is equivalent to changing the plugin "gain" individually for all VSTis. Same slider/textbox limitations apply as to "Sample volume". - If 1.17RC2 plugin mix mode is selected in the song properties (it is by default), Global Volume will be applied to plugins too. (NOTE: this is somewhat of a _hack_, since global volume continues to be applied separately to _all_ samples as well.. so samples played through plugins are in fact affected _twice_ by the global volume). [Mod] removed player options from general tab to avoid confusion as to what is saved in file, in favour of button to open separate Player Settings dialog. [Fix] If a sample was replaced via a drag&drop onto the instrument tab, the sample properties in the sample tab (e.g. loop points etc..) were not refreshed - fixed. [Fix] Fixed random crash on XM save if an instrument had an empty sample map (tx Skilletaudio!) [Fix] Changing plugin's dry/wet ratio directly from the pattern with \xx: previously could trigger an unpredictable VST parameter change - fixed [Fix] Restored amplify & change instrument in pattern ctx menu - sorry!! (no need to send me death threats about this anymore, please! :) [Fix] Minor refresh fix to graphical parameter editor. v1.17.02.21 ----------- [Mod] Added option to hide unavailable options in pattern ctx menu, rather than greying them out. [Fix] Drags on Orderlist mark song as modified. [Fix] Fixed auto-deletion of excess autosaves where song has no associated directory. [Fix] Fixed option in colour setting tab to override time sig highlighting with custom highlight positions (was always getting reset to time sig highlighting before). [Fix] Fixes to play note from VST gui. [Fix] Second attempt at fixing stuck VSTi notes when playing during playback. [Fix] If an effect is removed, channels pointing to that effect now display "[empty]" [Fix] Full range song pre-amp is now saved in song with both "XM" and "IT". v1.17.02.20 ----------- [New] !! Emulate Mix Bugs Has GONE!! Now select Plugin Mix Level from song properties; it gets saved with the song now. Note that there are 3 settings: - Original (equivalent to "emulate mix bugs") - 1.17RC1 (what it was from RC1 up until this build) - 1.17RC2 (what I believe to be correct... mastering plugins report the same levels as exported WAVs with this one). [New] OpenMPT version saved in file, visible in song settings dialog. [New] Added customisable shortcut key for toggling (un)mute on pattern transition. [New] Force pattern sequence override (ctrl-left-click orderlist) now works in play-pattern mode. - Known issue: orderlist GUI is not refreshed so line remains. [Mod] Enabled XP themes. [Mod] Resolution of plugin default GUI parameter slider increased from 100 to 1000. I couldn't get the per-thousand symbol to display yet. :( [Mod] Version number change - we no longer specify revision number explicitly. It is bad practice to make revision numbers external, as we have no real control over the way they change. The version number will always be in the CVS-commit comments fiel from now on. [Mod] GUI now uses radiobuttons for path type selection. [Mod] Toggle (un)mute on pattern transition is now ctrl-left-click (not ctrl-right-click). [Mod] Song settings dialog cleanup. Minor instrument tab GUI cleanups. About dialog cleanups. [Fix] ITP users are now warned that autosaves fail if their instrument paths aren't set up. [Fix] If "use songs' original dirs" is ticked but the song has never been saved and therefore has no path, the backups will now always go in mptrack.exe's working directory as it was at startup. [Fix] Keyconfig loader no longer reports errors in bad key config file after the 10th error, to avoid reporting hundred of errors if for example you try to load a binary by mistake. [Fix] Song is marked as modified on tempo & volume slider move in general tab, as well as on drag selection. [Fix] Correct pattern name displayed on first opening of pattern editor. [Fix] Tool tips restored on pattern editor. [Fix] The instrument and sample tab play buttons should no longer stop the song. [Fix] Fixed play selected part of a sample. [Fix] Fixed start of samples not playing when previewing them whilst song is playing (I think - I had trouble reproducing this one :) [Fix] Fixed stuck notes when playing VSTis during pattern transition (I think - I had trouble reproducing this one :) [Fix] Fixed: samples attached to instruments should never be removed in cleanups with ITP. [Fix] Fixed build-up of NNA'ed notes whilst channel is muted, which all play together on unmute. [Fix] Fixed XM->IT conversion of Sxx over row 32. [Fix] Fixed: Effect interpolation works even if only param column is selected again. [Fix] Fixed: paste, delete, drag should no longer work if recording is disabled. v1.17RC1 (revision 1.13.2.19) ----------------------------- [New] Ctrl-right-clicking a channel will cause it to be muted at the next pattern transition. Let me know if this is working the way you want, then I'll work on adding keyboard shortcuts, channel manager integration etc... [Mod] First (naive) attempt at allowing sample & intrument plaback from sample & instrument tab without stopping the track. Let me know what breaks. [Mod] Setting a documement's "modified" flag (the asterisk) is now done in a thread safe manner if the modification come from the audio thread rather than the GUI thread. Could prevent rare crashes. [Fix] Fixed "play row" only playing first tick. Should play whole row now (tx LPChip). [Fix] Fixed broken noteoffs. (tx anboi) [Fix] Fixed minor Channel Manager bug by which the second of two quick consecutive clicks was ignored. v1.17RC1 (revision 1.13.2.18) ----------------------------- [New] Interpolate notes. :) [New] Portamento (Fxx Exx) now sent to VSTis as Pitch Bend MIDI CC. [New] Retrig (Qxx) now works on VSTis. [Mod] (internal) Pattern editor cleanups [Mod] Recoded pattern editor context menu (in view of making it customizable) [Fix] Fixed possible truncated lines in comments [Fix] Fixed channel manager close bug - don't need to "open twice" anymore. [Fix] Restored old behaviour that I had accidentally broken: Ctrl-clicking a position in the orderlist will schedule it to play next. [Fix] Fixed corrupt selection bug when mouse drags to the right of last channel. [Fix] Fixed bug by which NNA'd notes originating from muted channels would still be audible. [Fix] Changing VSTi preset from an instrument no longer forces reselection of current bank (perf improvement on some plugs) [Fix] Minor VSTi volume fixes. Hope this doesn't screw your old track us too much. :( [Fix] Fixed chunk saving for plugs with chunks less than 8 bytes (e.g. VB ffx4) - warning: might have broken loading/saving plug settings for other plugs. (tx anboi) [Fix] Fixed estimate song with classic tempo mode. v1.17RC1 (revision 1.13.2.17) ----------------------------- [New] "Select Plugin" window now remembers size & position, plus other minor enhancements. [New] NEW - Precise & simplified BPM Mode! (Please test :D) - Enable it in the song setting window, where you set module type, num channels etc. Set "tempo mode: modern". - Txx (Fxx with xx>20 with XM) defines the real, exact beats per minute. Always. - The effective playback speed therefore also depends on the "rows per beat" value in the song settings. - Axx (Fxx with xx<21 with XM) continues to define the ticks per row, but does not affect playback speed per se. - Features tick-to-tick compensation for buffer size calculation rounding errors (aka high precision). - Feedback more than welcome!! [New] To avoid getting Settings popup when version number in registry is less than current version, use command line option: "/noSettingsOnNewVersion" [Mod] If autosave fails for whatever reason, options window should open automatically on Autosave page. [Mod] Ericus' "alternative" tempo interpretation is now a song setting rather than a general setting. You can select it in the same popup as where you set module type, num channels etc. Set "tempo mode: alternative". [Mod] GUI changes to accomodate for new speed mode. [Fix] If a broken plugin was in the plugin list, the "Select Plugin" dialog would always select it by default (tx LPChip) [Fix] Fixed possible crash on close if Autosave path is empty. [Fix] Fixed additional silence that could appear at the end of rendered wavs. [Fix] Fix to sample view refresh bug with sample > 255. [Fix] Fixes to eXtension Param (#), which previously only worked on channel 1, and could not extend tempo with XMs. [Fix] Fixed memory leak on close if no keymap file could be found. v1.17RC1 (revision 1.13.2.16) ----------------------------- [Fix] Fixed corrupt .mod when non existent pattern is listed in sequence. [Fix] Autosaver is automatically disabled when autosave fails. v1.17RC1 (revision 1.13.2.15) ----------------------------- [Mod] Warning in custom keys log when entering a key that causes a cross-context conflict. [Fix] Instruments can now force lowpass filter mode [Fix] Fixed some boundary typos. [Fix] Fixed volume changes on muting/unmuting channels. v1.17RC1 (revision 1.13.2.14) ----------------------------- [New] Rubbish CPU usage indicator. Dishonestly shows 10-20% less than Windows taskmanager, not sure why yet. [New] Quick "Go to row/channel/pattern/order" dialog in pattern editor. Set up a custom key to use it the Pattern Editor/General category. [New] List input channels & instruments (as well as input plugins) in the plugin info/input menu. [New] Can play VSTi in plugin's window if you have set up an intrument that is assigned to that plugin. If you have multiple instruments assigned to that plugin, you can select which one is used from the info/input menu. [New] Option to force built-in filter into highpass mode on particular instruments. [New] Cutoff / resonance random variation. [New] Optional per-instrument resampling mode selection! [New] Move a plugin from an FX slot to another FX slot (hopefully automatically updates references throughout track, so it should sound unchanged). [New] Inset a blank FX slot between 2 FX slots. Again, song should sound unchanged. [Mod] Previously, in the instrument view, "Attack" represented the sample ramping where more attack meant less ramping. The property has been renamed to ramping and inverted so as to be more intuitive. [Mod] Replaced a bunch of "Modplug Tracker" strings with "OpenMPT". :) [Mod] Code cleanups, particularly in IT/ITP/ITI/XM/XI extended info saving. Extensive testing is TODO, including 2-way compat with previous versions. [Fix] Prevented another very rare hang on stop which could occur when more than 255 notes were active simultaneously on a same plugin. v1.17RC1 (revision 1.13.2.13) ----------------------------- [New] Can now access info about a plug from the Plugin's window, such as inputs, outputs and relevant macros. FX slot number shown in window title. [New] Added prev&next preset and randomize params shortcut keys (take effect when plugin's window has focus). [New] If macros are used on a channel to which no plugin is assigned, but an instrument with an assigned plugin is active on that channel, the macros will be effective in the instrument's plugin. Be careful now! [New] Added macro to control Dry/Wet ratio (= volume for VSTis) from pattern. Zxx and \xx should both work. [New] Fixed old bug that was preventing custom MIDI messages from being sent to plugs. So you can now send MIDI CC commands to your plugs! For example, to send mod wheel commands with Zxx on MIDI channel 0, create a custom macro with the value "B001z" (Only Zxx works for now, not \xx). [Mod] Plugin window's factory preset menu improvements for plugs with lots of presets [Mod] Minor enhancenments to Zxx Macro window. TODO: add support to easily add MIDI CC macros. [Mod] Reduced plugin idle call rate from 100Hz to 50Hz, in accordance with some discussion on the VST sdk mailing list. [Fix] More fixes to plugs that try to get tempo before we've had a chance to init them properly. [Fix] Backed out first attempt at reducing hangs on stop (from rev. 1.13.2.10) - it was pointless. I think 1.13.2.11 really solved it though. [Fix] Fixed minor imprecision in \xx slide calculations. [Fix] Minor GUI refresh fixes (tx xtr1m). v1.17RC1 (revision 1.13.2.12) ----------------------------- [Fix] Fix to plugs that try to get tempo before we've had a chance to init them properly. v1.17RC1 (revision 1.13.2.11) ----------------------------- [New] Time signature (rows per beat & rows per measure) now saved with songs. [New] Added next and previous document shortcut keys (that work :). [Mod] IT files now save the number of channels you choose, rather than shrinking to fit & removing the last unused channels. I like it this way, yell if you don't. [Fix] IT files can now save tempo > 255. [Fix] Various minor fixes relating to marking file as modified. [Fix] Another stab at the elusive hangs on stop. Let me know if there's any improvement. v1.17RC1 (revision 1.13.2.10) ----------------------------- [New] Can now bypass plug from plug's window and from tree view. [New] Added commands to navigate up/down by spacing [Mod] Changes to plugin threading in the hope of reducing hangs. I can't reproduce the hangs on my system so this is a stab in the dark. [Mod] Minor code cleanups [Fix] Improved handling of keystrokes when textbox has focus. [Fix] Fixed auto-chord detection bugs which caused it to screw up in the last rows of the pattern. [Fix] Closing a document via a shortcut key no longer bypasses modified check - tx diamond. [Fix] Changing a plugin param now marks song as modified. [Fix] Fixed minor solo/mute bug ("solo" could unexepectedly behave like unmute all in some cases) - tx Gazus Snake [Fix] Sample GUI not getting updated with samples > 255 - tx POPS125 [Fix] Fixed some tiny memory leaks. v1.17RC1 (revision 1.13.2.9) ---------------------------- [New] Select plugin dialog is now resizable. :D [Mod] processReplacing() is now favoured over process() in VST plugs [Fix] In autosave dialog, will check backup path exists (if it is to be used). Also Autosave should issue a warning if save fails for whatever reason. [Fix] File marked as modified on all sample/intrument/general tab changes (some had been missed). [Fix] Change to command handling when textbox has focus [Fix] Idle time dished out to plugs at 100Hz rather than 10Hz and from TrackApp::OnIdle rather than MainFrame::OnTimer [Fix] Internal: Edit & Continue debugging enabled in debug build settings. [Fix] Cxx no longer ignored after 255 loops [Fix] Autosaver will now save is autsaver is disabled. :) [Fix] Samplemap and instrument name should be accessible with XM files now. [Fix] Mousewheel should scroll pattern even if focus is in some elements above the pattern editor. (I believe WinME and maybe Win98 users might still have trouble with the mousewheel. I'm not sure why this is. If anyone has any ideas, let me know.) [Fix] No MPT commands will be executed if a texbox has focus, i.e. textboxes will work again now. [Fix] Minor optimisations to instrument view envelope drawing [Fix] Internal: a couple of code cleanups to remove a few compilation warnings. [Fix] Plugin automatically bypassed if an exception is thrown in process()/processReplacing() [Fix] Switched to C++ exceptions handlers throughout, which will actually get compiled into the release builds. [Fix] Other minor fixes (Options dialog now remembers if autosave tab was selected, zoom level cycling in sample view fixed...) v1.17RC1 (revision 1.13.2.8) ---------------------------- [New] Option to emulate some old mixing bugs, in case your old track sounds too different in this version (could happen with some distortion plugins for example) and you aren't able to recover the sound by adjusting the levels [Mod] If a plug identifies itself as willing to recieve MIDI events, MIDI channel 1 will automatically be selected when it is assigned to an instrument [Fix] Minor GUI fixes v1.17RC0 (revision 1.13.2.7) ---------------------------- [Mod] Set octave keys are now customisable. Not that they will no longer be automatically assigned to freed number keys. So if you map a note to key 8 then unmap it, you'll have to explicitly set Set Octave 8 back to key 8 again. [Fix] Fixed crash in instrument view in win 98. v1.17RC0 (revision 1.13.2.6) ---------------------------- [Fix] Minor GUI fixes v1.17RC0 (revision 1.13.2.5) ---------------------------- [Fix] Fixed ridiculous mono ITI loading bug. v1.17RC0 (revision 1.13.2.4) ---------------------------- [New] Autosave function. Be sure to configure it to your taste. [New] Added IT style mix paste command, for those of you who just weren't ready for *real* mixpasting ;) [New] Option to show estimated "real BPM", just as it is communicated to plugins. [Mod] Minor GUI changes [Mod] Various internal cleanups [Fix] Some VST threading & initialisation improvements, might prevent some hangs/crashes. [Fix] Plugs that save an entire bank in their chunks should be better at restoring their active program on load [Fix] cursor dependant play commands now play from start of song even before cursor position is initialised. [Fix] Minor wave rendering fixes [Fix] Mastervolume calculation fixes [Fix] VSTi mixing & volume fixes [Fix] Float conversion fixes v1.17RC0 (revision 1.13.2.3) ---------------------------- [New] Extra statusbar info in pattern view. Ugly but useful (particularly for macros). [New] Assign a MIDI bank to an instrument, for plugs that support it (e.g. Edirol Orchestral) (tx ganja) [Imp] Improvements to note recording with record select (from MIDI-In as well as normal keyboard): - If note off recording is enabled, note offs appear in the channel in which the note was played, even if the cursor has moved to another channel. - Channels in which a note is still being played is "locked", so no new notes can interrupt it, unless there are no other unlocked record select channels. [Mod] When wrap and continuous scroll are off, cursor jump/snap now goes to row 0 or last row when it should go beyond, rather than doing nothing. [Mod] Minor VST destruction memory management change - may increase or decrease crash occurences. :) [Mod] internal: changed to make thread priority normal in debug mode, for easier hang debugging. [Mod] Restored VSTi original output level [Mod] (internal) removed unwanted (at this point) vst parallel routing feature [Mod] Changes/clarifications to custom keys GUI (tx lpchip) [Mod] On adding a plugin to a song, MPT checks it against a list of known problematic plugins and warns you if necessary. [Fix] modifier keys are no longer reset on pattern editor focus loss [Fix] fixed scrollpos jumping to row 0 on change pattern [Fix] if the full pattern can be visible in window, pattern is moved down so row 0 is visible and scrollbar is not needed. (tx lpchip) [Fix] some VU meter fixes [Fix] instrument view slider optimisations (we think it affects just WinXP) [Fix] fixed hang on song stop with some OhmForce plugs (and maybe others). [Fix] fixed minor slider GUI bug with some OhmForce plugs (and maybe others). [Fix] various minor fixes: instrument open/save/new shortcut key propagation, VSTi playback at volume 0 ... [Fix] floating point plugin parameter edit box fix [Fix] Checked preset in VST dialog menu is updated when preset is changed from inside the plug's on GUI. [Fix] Minor VST compliancy improvements (fixes elusive stuck notes with synthedit plugs on song loop) [Fix] MIDI-in fixes [Fix] Save full precision instrument panning and fadeout values in IT and XM, sample panning range limited to 0-64 at GUI level, to correlate with the range that gets saved. [Fix] Fix to IT loading algorithm when last sample is empty (MPTX data was ignored) [Fix] Fix to XM loading algorithm when macro definitions embedded in file [Fix] Zxx Macro window fixes v1.16.0215a ----------- [New] "Overwrite effect type" mode in effect param visualiser [New] new custom keys: - Toggle focus between pattern editor<->orderlist - Open/Save/New instrument/sample (focus must be in bottom part - Pattern editor copy and lose selection [New] Plugin gain control [New] Pitch shifer / time stretcher in sample view! (non real-time :) [New] added key command to insert new pattern from pattern editor. [Mod] Zxx macro GUI total revamp [Mod] Time stretcher GUI changes, stretch loop points [Mod] GUI Cleanup [Mod] Changed behaviour of calls to VST plugs on loop song or on replay song without stopping. No longer do suspend/resume, just kill all notes. This avoids pause caused by plugs with a heavy "resume" method, but means buffers are no longer cleared. [Work in progress - some VSTis don't stop notes, not sure why yet] [Fix] Various minor fixes (registry, VST, GUI) [Fix] Plugin 32bit float conversion and mixing fixes [Fix] XM saving changes/fixes. [Fix] Added support for VSTs which change their window size. (tx goor00) [Fix] Minor GUI fixes. [Fix] fixes to chunk-based FXP loading/saving. (tx Diamond) [Fix] fix to allow VST synchronisation when rendering to wav. Added fix for MP3 export too. v1.16.0214a ----------- [New] GUI for resampler & default ramping configuration [New] added per-instrument sample ramping [New] Channel manager updates [New] Multiple mix modes for plugins [New] polyphase resampler tuning and fixes (enabled polyphase on filtered samples...) [New] Added "copy and lose selection" command as a general pattern command, for those who like the cursor to be restored when they copy. You obviously don't have to map a key to this command if you don't want to use it. [New] Automatic chord detection, a la Ericus: Assuming you're in a channel with note recording enabled and you have other channels with note recording enabled, if you hit two note keys within a given time, MPT should put the notes on the same row. You can set the interval time in keyboard config dialog. [Mod] added button on wave writer dialog to open player settings rather than checkbox to enable "HQ resampling". [Mod] new internal instrument format [Mod] MIDI-In now uses same note entry code as normal keyboard note entry. (tx Squirrel Havoc) [Mod] Added shrink and grow selection to pattern context menu. [Fix] fix to note playback when pattern record is disabled (tx ganja). [Fix] fix for VST plugs with >2 outputs, though it is currently assumed they are stereo. (tx Muox, ganja, ericus for further fixes) [Fix] fixed wav export at >44.1kHz and >24bit. [Fix] Fixed velocity recording from MIDI In. (tx Squirrel Havoc) [Fix] Fixed stuck notes when playing VSTis from pattern in record enabled channels. [Fix] Fixed file corruption bug on saving after deleting an instrument (tx LPChip) v1.16.0213a ----------- [New] Untested: incomplete changes in MIDI in pattern recording (taken direct from Ericus' build - probably broken in my build atm). [New] For people who just cannot cope with the slightest change, I added alternative == and ^^ commands which do not enter the current instrument number. (tx LPChip ;) [New] Added button to access an instrument's plug's gui from the pattern, if possible. (tx LPChip) [New] Notes audible in sample map window in instrument control; notes also play when you change sample. Notes do not yet play in "keyboard" view. [Mod] ^^ now sends "all sounds off" to plugs; note that few plugs support it, but those that do should stop quickly, without playing decay, unlike with == where decay is played. ^^ also explicitly sends a note off to all 128 notes on that tracker and MIDI channel, regardless of active notemap, so it might deal with some stuck note cases. == is more conservative. This is a bit shoddy and will hopefully all be clarified in the future. [Mod] experiment: audio device left open when playing notes in pattern but song not playing (device still closes on stop song though) [Mod] some wet/dry slider cosmetic enhancements [Mod] Set Instrument command no longer requires instrument column to be selected (tx LPChip) [Mod] Cosmetic changes in instrument pane (tx LPChip) [Fix] Some VSTi stuck note cases fixed... some still remain. (tx LPChip) [Fix] Sample map window fixes (tx Ganja) [Fix] Various VSTi fixes (tx LPChip) [Fix] Reduced max channels from 256 to 128, so NNA etc still have a chance to work (tx Ericus) [Fix] Various keyboard fixes (tx Diamond). [Fix] Another attempt at getting rid of beeps with alt-combo keys that do not open menu items and are assigned to commands, without screwing everything up. (tx LPChip) Merged from Ericus' build: [New] Untested: 'Rearrange samples' menu entry in edit->cleanup [New] Untested: Alternative BPM/Speed interpretation method [New] Untested: IT project files (.itp) [New] Channel manager window. [New] Keyboard split - allows you to have 2 active instruments, distinguishable by the note you enter. [New] Second channel record group - if enabled, chords for instrument 1 go to channel group 1, whereas notes for instrument 2 go to channel group 2. In the future all notes will be redirected to the appropriate record channels iff they are enabled. [New] WAV export update (24 bits wave out + channel-based wave files output mode) [New] Tempo / speed / volume (in general tab) realtime update + tempo up to 512 bpm [New] Option to free associate samples when removing one or more instrument(s) [New] Polyphase interpolation on stereo samples. [New] Default enable/disable MIDI in record setup option added [New] Parameter extension pattern effect (# command - key customisable) [New] Pattern size up to 1024 rows [New] 256MB samples [New] Factory presets menus for VSTs on general tab and VST gui (some known issues e.g. with Amplitube). [Mod] Load / save preset on General tab [Fix] Live VSTi playback on channel 1 bugfix. [Fix] ITI note sample map save fix v1.16.0212a ----------- [Reg] Can no longer select "Normalize" when writing to wave, as this can produce incorrect output with certain VSTs. For now, use an external editor to normalize you wavs. [Fix] Extra safety checks for plugins that don't return parameters between 0 and 1 exactly. [Fix] Tentative fix to silent dx plugins on non SSE enabled cpus. [New] Added "IT Style" clear field commands. Using this, clearing the note field automatically clears the instrument field. [Mod] Swapped left and right mouse button action in effect visualiser (now use left button to "paint" nodes, right to move a specific node). [New] "Fill gaps" mode in effect visualiser, to automatically enter effects in blank spaces. v1.16.0211a ----------- [Fix] Fixed crashes/bugs in instrument view when playing high notes. (tx LP) [Fix] Fixed (tx LP) [Mod] Removed "Unused?" text under MIDI Prog listbox - hehe Ganja, does it actually work?! :) v1.16.0210a ----------- [Fix] Fixed warnings if no keyboard map file is found in registry (on first run) [New] Shortcut key to toggle "follow song". [New] Can change/access plugins froms pattern editor. Can also open editor via shortcut key. [Fix] Custom keys fixes [New] Default plugin GUI. [Fix] Fixed some more stuck note cases. [Fix] Fix scrolling bug when toggling follow song with whole pattern visible on screen. (tx LPChip) [New] Load/Save VST preset [New] Randomize VST parameters [Mod] Porta slides occur on tick 0 iff speed is 1 tick per row. (tx felineki) [New] "Report bug" button on the GUI takes you to beta tester's forum :) [New] Optional "row guidelines" in instrument envelope editor. [Mod] Optimised instrument envelope GUI to avoid flickering on resize. Various other cosmetic changes. [Fix] Fixed "Remove channels" window [Fix] Fixed beeps with certain alt-combo keys [Fix] Offset in the volume column now works with retrigs. [Mod] Effect Keys are updated automatically when you change module type. You cannot customise them anymore. [Fix] Improved VST idle time handling. Should fix the bug by which CPU usage would jump to 100% with certain combinations of plugs. [Fix] (internal) Improved VSTGui compliancy 20041012 -------- [Fix] (internal) some VST compliancy improvements on start/stop [New] VSTTimeInfo data sent [Reg] Cutter offset still does not restart with multilens; other plugs also have some sync issues... > Modulation sync seems OK with FabFilter but not with Multilens. ---> could be that transport is never reset. [New] VSTi can be assigned to an instrument, not just a channel (I would encourage this method from now on - consider assigning VSTis to channels deprecated) [Mod] Started re-styling the instrument view to reflect this. [New] More sensible VSTi polyphony, should behave more like sample-based normal instruments: Two subsequent notes sent to a same VSTi on a same MIDI channel from a same tracker channel will cause the first note to be NoteOff'ed just before the second plays... EXCEPT if NNA is set to continue. Got it? :) In other words, NNAs are kinda working for VSTis (but Note Off, Cut and Fade all do the same thing) [New] Same with DNAs. [Fix] Fixed some issues with VSTi playback on note entry. Should now stop note on key release, like with sample-based normal instrs. [Reg] Bugs with Xlutop Chainer and some other plugs (more f'ing stuck notes) - working on it. [Reg] Increased memory footprint, possible performance regressions [New] Can now enable/disable all notes on key hold with a single click in the key config dialog [Mod] No longer need to press 'set' in key config dialog: changes are recorded automatically. [Fix] Loading patterns of less than 4 rows screws up. We now prevent users from setting pattern size to less than 4. Just use a pattern break command. (tx Ganja) (bug introduced before opensourcing) 20041009 -------- [Fix] Tempo slides now behave as specified in it.txt. (tx ManaSmack) (bug introduced before opensourcing) [New] Can now save stereo ITIs [New] Removed 64 sample limit on ITIs (can now load/save instruments with up to 120 samples, i.e. one separate sample for each note) [Fix] Fixed bug which allowed entering notes higher than B-9 (even though they didn't play) (bug introduced 20040910) [Fix] Fixed graphical parameter editor key. (tx LPChip) (bug introduced 20040910) [Fix] Fixed transpose octave down key (bug introduced 20040910) [Fix] Fixed note fade on key release in instrument view. (tx Ganja) bug introduced 20040910 [Fix] Prevented multiple note playback in sample view, except on chord playback. (tx LPChip) (bug introduced 20040910) [Fix] Finished custom note handling for instrument notemapper and tree view (tx Ganja) (bug introduced 20040910) [Fix] This version shouldn't corrupt the custom key registry setting used by previous versions of MPT. (bug introduced 20040910) [New] Can now save orders past blank order, a la IT2. (tx Nofold) [New] Some pattern undo improvements (still far from perfect!) [New] Stretch/Shrink selection (a la IT2) 20040910 -------- [New] Fully customisable keys, with profile loading and saving, multiple keys for same command, etc.. [New] Some new commands (e.g. Snap to highlight...) [Mod] Enhanced some old commands (e.g. homing vertically twice homes horizontally...) [Mod] Changed scope of some commands (e.g. play pattern should work from anywhere...) [Reg] Lots of keypress related bugs, please help me isolate them [Fix] Some minor VSTi fixes [New] Oxx (offset) kind of works in the volume command [New] Half-finished "velocity" command (Ask LPChip about this). [Mod] Wicked new splash by Nofold! [Var] Internal changes. [Var] Various other minor bits n bobs Wild Prebeta: 2004.02.24 ------------------------ [New] Each individual view (general/pattern/samples/intruments/comments) remembers its own horizontal splitter position. [New] If you enter notes in a channel to which a VSTi has been assigned, and you're using an instrument with a MIDI channel send, you should hear the VSTi play as you enter the notes. [Mod] Minor cosmetic changes, including about dialog image by Snu & Shableep. :) v2004.02.22 ----------- [New] Conditional compilation for MMX, SSE, AMD assembly routines. This should allow compilation on Vanilla VC6 compilers. [New] 255 channel support with updated IT loader/saver. It should not impact existing .it modules and allows for safe loading and saving of >64 channel modules. v2004.02.16 ----------- [New] A Dry/Wet slider for each plugin - values should save and load in this version, and be cleanly ignored by older versions. [New] Tick resolution MIDI macro slide. Use \xx command instead of Zxx if you want your plugin param to slide to xx over the course of that row rather than brutally jumping there. Should also work on built-in cutoff+resonance. For an example of what this effect does, download: http://www.soal.org/expMPT/paramSlideDemo.zip . [New] Effect param graphical editor prototype. Left click modifies a single node, right click & drag to "draw". Warning, things get quite sluggish if you're visualizing many rows and make the window quite large. [New] Mixpaste, just like in IT2 [New] Option to have "follow song" disabled by default under general settings. [New] SDx works on VSTis. Questions/comments/bug reports? ------------------------------- Visit http://openmpt.org/ where you can find our bugtracker and forums.