View Issue Details

IDProjectCategoryView StatusLast Update
0001765OpenMPTPlayback Compatibilitypublic2024-04-03 08:27
ReporterBlubird_ Assigned ToSaga Musix  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platformx64OSWindowsOS Version11
Product VersionOpenMPT 1.31.06.00 / libopenmpt 0.7.6 (current stable) 
Target VersionOpenMPT 1.31.07.00 / libopenmpt 0.7.7 (upcoming stable)Fixed in VersionOpenMPT 1.31.07.00 / libopenmpt 0.7.7 (upcoming stable) 
Summary0001765: Upon loading a MOD file, all Dxx command details are lost
Description

When I load a MOD tracker file with Dxx commands in it, those commands are set to D00 instead of their proper values. This does not happen when I load the file in any other tracker.

Steps To Reproduce
  1. Use a Dxx command somewhere in your song.
  2. Save the file as MOD, then reload.
Additional Information

If you still can't reproduce the bug, I've attached a MOD file with this problem.

TagsNo tags attached.
Attached Files
buriki.zip (12,417 bytes)
Has the bug occurred in previous versions?Yes
Tested code revision (in case you know it)

Relationships

related to 0000749 resolvedSaga Musix Specific detection of NoiseTracker modules 

Activities

Saga Musix

Saga Musix

2024-03-30 12:54

administrator   ~0005890

It seems like the NoiseTracker detection might be a bit too aggressive here and even apply to very basic tracks. Noise Tracker treats all Dxx commands as D00, so if OpenMPT thinks it is likely that the module was made with NoiseTracker it will do the same.
As a temporary workaround, OpenMPT will not consider a module to be made with NoiseTracker if any of these conditions are true:

  • Commands 7, 8, 9 are used
  • Commands E1x... EFx are used
  • Command F20 and above is used
  • Samples longer than 64k are used
Blubird_

Blubird_

2024-03-30 13:03

reporter   ~0005892

I see... Trying to have compatibility with everything can be a bit of a pain, I know that firsthand as a developer myself.

In that case, I'm unsure if a fix is possible, but thanks for telling me about these workarounds.

Saga Musix

Saga Musix

2024-03-30 16:19

administrator   ~0005896

I will have to do a bit more research, but depending on the amount of NoiseTraker modules that actually need this fix for the Dxx command, it may not be worth the effort to keep the heuristic at all.

Saga Musix

Saga Musix

2024-04-02 21:15

administrator   ~0005904

The heuristic has been finetuned in r20486 so fewer modules should be affected by it. The improvement will only work if there are any empty sample slots like in this particular module, though, but it's the only thing I could come up with for now.

Updated test builds will be available in a few hours from https://builds.openmpt.org/builds/

Blubird_

Blubird_

2024-04-03 00:02

reporter   ~0005907

It appears to be working -- the Dxx values are now being loaded correctly.

Issue History

Date Modified Username Field Change
2024-03-30 11:39 Blubird_ New Issue
2024-03-30 11:39 Blubird_ File Added: buriki.zip
2024-03-30 12:54 Saga Musix Note Added: 0005890
2024-03-30 13:03 Blubird_ Note Added: 0005892
2024-03-30 16:19 Saga Musix Note Added: 0005896
2024-04-02 20:45 Saga Musix Relationship added related to 0000749
2024-04-02 21:08 Saga Musix Assigned To => Saga Musix
2024-04-02 21:08 Saga Musix Status new => assigned
2024-04-02 21:15 Saga Musix Note Added: 0005904
2024-04-02 21:15 Saga Musix Status assigned => feedback
2024-04-02 21:15 Saga Musix Target Version => OpenMPT 1.31.07.00 / libopenmpt 0.7.7 (upcoming stable)
2024-04-03 00:02 Blubird_ Note Added: 0005907
2024-04-03 00:02 Blubird_ Status feedback => assigned
2024-04-03 07:18 Saga Musix Severity major => minor
2024-04-03 07:18 Saga Musix Status assigned => resolved
2024-04-03 07:18 Saga Musix Resolution open => fixed
2024-04-03 07:18 Saga Musix Category File Format Support => Playback Compatibility
2024-04-03 07:18 Saga Musix Fixed in Version => OpenMPT 1.31.07.00 / libopenmpt 0.7.7 (upcoming stable)