View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000359||OpenMPT||Playback Compatibility||public||2013-03-13 02:36||2013-03-13 18:49|
|Status||closed||Resolution||no change required|
|Summary||0000359: [XM] Dxx saves xx in a wrong way if xx > $09|
I noticed that Dxx saves xx (in the actual file) wrong if > $09
This can be tested by looking at the XM data in a hex editor, or opening the XM in Fast Tracker 2.
|Steps To Reproduce|
Create an XM file.
This does not seem to apply to any other command.
Also, Dxx still works fine within MPT itself. It's only saved wrong.
|Tags||No tags attached.|
|Has the bug occurred in previous versions?||I'm actually using MPT 1.16.0203 but I asked a friend and he reproduced it in 1.18.03.00|
|Tested code revision (in case you know it)|
Sorry, I got some details wrong the first time around.
Next time, please don't just look at bits and bytes, but also verify that the resulting playback is actually correct - because it is.
Yes but I just tested it again in FT2, it has a weird behaviour.
Since I am writing an XM replaying code for a particular system I wonder how I should emulate that behaviour.
That's because the calculation is as follows:
As you can see, there are two several values that can be used to jump to row 15 (decimal): $15 ($1 10 + $5) and $0F ($0 10 + $F). Yes it is weird, but it really shouldn't be a problem to implement...
But again, that's not a problem in OpenMPT. OpenMPT stores the value as defined by FT2 in the file, and it will accept both possible encodings when importing XM files.
Thank you very much, and sorry if I (re)opened this. I just tested that both D0F and D15 (as seen in FT2) appear as D0F in MPT, so I'll just implement it like you do.
Alright. Good luck with your further implementations. Doing things exactly like FT2 is horribly painful. ;)
|2013-03-13 02:36||ramiel||New Issue|
|2013-03-13 02:40||ramiel||Description Updated|
|2013-03-13 02:40||ramiel||Additional Information Updated|
|2013-03-13 02:41||ramiel||Note Added: 0001126|
|2013-03-13 02:41||ramiel||Summary||Dxx saves xx in a wrong way if xx > $0F => Dxx saves xx in a wrong way if xx > $09|
|2013-03-13 02:43||ramiel||Summary||Dxx saves xx in a wrong way if xx > $09 => [XM] Dxx saves xx in a wrong way if xx > $09|
|2013-03-13 12:17||Saga Musix||Note Added: 0001127|
|2013-03-13 12:17||Saga Musix||Status||new => closed|
|2013-03-13 12:17||Saga Musix||Resolution||open => no change required|
|2013-03-13 18:37||ramiel||Note Added: 0001128|
|2013-03-13 18:37||ramiel||Status||closed => feedback|
|2013-03-13 18:37||ramiel||Resolution||no change required => reopened|
|2013-03-13 18:44||Saga Musix||Note Added: 0001129|
|2013-03-13 18:44||Saga Musix||Status||feedback => closed|
|2013-03-13 18:44||Saga Musix||Resolution||reopened => no change required|
|2013-03-13 18:47||ramiel||Note Added: 0001130|
|2013-03-13 18:47||ramiel||Status||closed => feedback|
|2013-03-13 18:47||ramiel||Resolution||no change required => reopened|
|2013-03-13 18:49||Saga Musix||Note Added: 0001131|
|2013-03-13 18:49||Saga Musix||Status||feedback => closed|
|2013-03-13 18:49||Saga Musix||Resolution||reopened => no change required|