View Issue Details

IDProjectCategoryView StatusLast Update
0000094OpenMPTPlayback Compatibilitypublic2013-03-25 17:40
ReporterSaga Musix Assigned ToSaga Musix  
PrioritynormalSeverityminorReproducibilityN/A
Status resolvedResolutionfixed 
Product VersionOpenMPT 1.18.03.00 (upgrade first) 
Target VersionOpenMPT 1.20.02.00 (upgrade first)Fixed in VersionOpenMPT 1.22.01.00 (upgrade first) 
Summary0000094: Zxx macro interpretation is incomplete/wrong
Description

Zxx macros are not interpreted completely in all cases, and depending on the value the interpretation might even be wrong.
First off, a macro can contain several MIDI commands. However, they are just interpreted properly if all of them are external MIDI messages. If the first MIDI message is internal (filter and plugin control), the rest of the macro is ignored.
Second, OpenMPT doesn't take many of IT's variables into account, for example "n", which contains the note that is next to the macro. Some other variables are also missing or interpreted wrong.

Additional Information

Reference: http://schismtracker.org/wiki/MIDI.TXT (original Impulse Tracker document)

TagsNo tags attached.
Attached Files
WTF2.7z (13,371 bytes)
midipoop.7z (26,940 bytes)
Has the bug occurred in previous versions?
Tested code revision (in case you know it)

Activities

Saga Musix

Saga Musix

2011-03-27 18:14

administrator   ~0000116

I just found out that Z7F doesn't do anything audible in Impulse Tracker, but it resets the filter on the next note. OpenMPT, Schism Tracker and probably other software only respects the latter part, but still applies cutoff on Z7F.

Saga Musix

Saga Musix

2011-07-30 22:31

administrator   ~0000273

First step is done: Zxx macro interpretation is complete now. Some macro letters have been changed / added in this process, see the "macro help" button in the macro settings.
Macros can now also make use of volume / panning envelopes, however this does not work very well yet "between the rows" (neither with Zxx, nor with \xx) - this is still a big TODO!
Handling of those things is expected to change in the future, so don't rely on the buggy behaviour.

Saga Musix

Saga Musix

2011-07-31 12:43

administrator   ~0000279

TODO:

  • Envelopes are not processed if an instrument has no sample assigned (unless Compatible Mode is activated); it appears that an empty sample slot is enough, though, no actual sample data is required.
  • There should be per-instrument or per-VST panning / volume macros that are applied automatically.
Saga Musix

Saga Musix

2011-08-08 17:01

administrator   ~0000323

The TODO from comment 273 has been fixed. The other TODOs are still left.

Saga Musix

Saga Musix

2011-10-01 16:54

administrator   ~0000511

Z7F handling should also be fixed in compatible mode.

Saga Musix

Saga Musix

2013-03-25 17:40

administrator   ~0001156

Fixed envelope processing if there is sample assigned. Per-instrument macros will get their own issue.

Issue History

Date Modified Username Field Change
2011-03-25 13:42 Saga Musix New Issue
2011-03-27 18:14 Saga Musix Note Added: 0000116
2011-03-27 18:40 Saga Musix File Added: WTF2.7z
2011-03-27 18:40 Saga Musix File Added: midipoop.7z
2011-04-17 16:00 Saga Musix Assigned To => Saga Musix
2011-04-17 16:00 Saga Musix Status new => assigned
2011-04-17 16:00 Saga Musix Target Version => OpenMPT 1.19.01.* (old testing)
2011-05-26 18:48 Saga Musix Target Version OpenMPT 1.19.01.* (old testing) => OpenMPT 1.19.03.00 (upgrade first)
2011-07-01 22:56 Saga Musix Target Version OpenMPT 1.19.03.00 (upgrade first) => OpenMPT 1.20.01.00 (upgrade first)
2011-07-30 22:31 Saga Musix Note Added: 0000273
2011-07-31 12:43 Saga Musix Note Added: 0000279
2011-08-08 17:01 Saga Musix Note Added: 0000323
2011-10-01 16:54 Saga Musix Note Added: 0000511
2012-05-05 16:50 Saga Musix Target Version OpenMPT 1.20.01.00 (upgrade first) => OpenMPT 1.20.02.00 (upgrade first)
2013-03-25 17:40 Saga Musix Note Added: 0001156
2013-03-25 17:40 Saga Musix Status assigned => resolved
2013-03-25 17:40 Saga Musix Resolution open => fixed
2013-03-25 17:40 Saga Musix Fixed in Version => OpenMPT 1.22.01.00 (upgrade first)