View Issue Details

IDProjectCategoryView StatusLast Update
0001542OpenMPTFile Format Supportpublic2022-01-09 17:42
ReporterLachesis Assigned To 
Status newResolutionopen 
Platformx64OSWindowsOS Version10
Product VersionOpenMPT / libopenmpt 0.6.0 (current stable) 
Summary0001542: STM patterns >=count, <64 should be treated as valid empty patterns.

Several STM modules rely on referencing patterns higher than the advertized pattern count as blank patterns. Note patterns >=64 are invalid and behave unpredictably in Scream Tracker 2.

Steps To Reproduce

Load this module in OpenMPT. Order 16 references pattern 8, which will be greyed out. Playback skips it instead of playing a blank pattern. In Scream Tracker 2, this order is valid and will play correctly.

TagsNo tags attached.
Has the bug occurred in previous versions?Yes.
Tested code revision (in case you know it)


related to 0000765 new Auto-trim tracks for libopenmpt 


Saga Musix

Saga Musix

2022-01-09 13:39

administrator   ~0004980

This is an issue with many formats; typically it doesn't really affect playback (apart from silence being cut short at the end) so I didn't give it the attention it probalby deserves so far. We probably have to create non-existing patterns for most, if not all formats, but should probably not do so for files created with (older version of?) OpenMPT as that may change playback semantics.

Saga Musix

Saga Musix

2022-01-09 16:04

administrator   ~0004984

Last edited: 2022-01-09 16:06

I don't think I'd want to implement this before 0000765 is implemented, since most of the time when such non-existent empty patterns are encountered, they are supposed to be silent patterns at the end of the song. Giving libopenmpt users the optional possibility to automatically trim that silence would make it easier to justify creating those empty patterns.



2022-01-09 17:42

administrator   ~0004985

I'd even argue adding empty pattern at the end makes almost never sense for libopenmpt. There is the very remote case of a long sample getting played at the end, but the amount of annoyance it would cause for the "let's just play silence forever" modules maybe outweighs it completely. We will probably need to check a large sample size of modules for how common either case has been in practice to consider it for libopenmpt at all. This is less of a problem for OpenMPT of course.

Issue History

Date Modified Username Field Change
2022-01-09 02:47 Lachesis New Issue
2022-01-09 13:39 Saga Musix Note Added: 0004980
2022-01-09 16:03 Saga Musix Relationship added related to 0000765
2022-01-09 16:04 Saga Musix Note Added: 0004984
2022-01-09 16:06 Saga Musix Note Edited: 0004984
2022-01-09 17:42 manx Note Added: 0004985