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 |
Reporter | ramiel | Assigned To | |||
Priority | low | Severity | major | Reproducibility | always |
Status | closed | Resolution | no change required | ||
Platform | x86 | OS | Windows | OS Version | XP |
Summary | 0000359: [XM] Dxx saves xx in a wrong way if xx > $09 | ||||
Description | I noticed that Dxx saves xx (in the actual file) wrong if > $09 e.g. 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. | ||||
Additional Information | 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. ;) |
|
Date Modified | Username | Field | Change |
---|---|---|---|
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 |