Okay, I think with this information I can now build fairly reliable fingerprinting of IT files saved with UNMO3, and automatically fix IT files saved with UNMO3 older than 2.4.0.1 ("stuff" update from January 2011). They are probably rare but they do exist here and there.
For anyone else trying to identify IT files saved with UNMO3, here's the fingerprint (feel free to correct if anything is wrong
):
- cwtv and cmwt are both 0x0214
- row highlights are both 0
- pwd is 0
- reserved is 0
- MIDI pitch controller and MIDI config flags are never set
- edit history has a length of 0
The only applications I am aware of that are similar to this fingerprint are:
- CheeseTracker, but it always seems to write non-zero row highlights
- IT 2.14 without any patches, but it always writes a non-empty edit history (and is unlikely to write a reserved value of 0)
In addition to this fingerprint, for detecting old (broken) UNMO3 versions:
- If instrument mode is disabled but 4*smpNum zero bytes follow after the pattern parapointers, an UNMO3 version older than 2.4.0.1 was used.
- If only the "message" extra bit is set and two zero bytes are read after the parapointers, an UNMO3 version older than 2.4.0.1 was used.