Closed AliceLR closed 2 years ago
After checking some Digital Tracker versions in an Atari Falcon emulator I managed to come up with the following (IMO fairly reasonable) observations. tl;dr the extra Digital Tracker bytes are intentional and they are also most likely safe to disregard.
Why they're intentional:
FA06
and FA08
MODs can easily be saved in Digital Tracker <=2.01. Later versions switch to DTM.00h 40h 00h 00h
are always present after the magic.FA08
modules are the exact length you'd expect if they were 8CHN
modules, suggesting there shouldn't be 4 extra bytes anywhere in the module. However, all FA08
modules found in Digital Tracker releases and all FA06
/FA08
modules saved are consistently the size you'd expect from a 6CHN
or 8CHN
with 4 extra bytes. I think the extra length of the ModLand modules might have been noticed by someone or a utility and truncated off.Why they can be ignored (and probably what they were meant for):
00h 40h 00h 00h
together suggest that the four bytes were intended to be something along the lines of: pattern row count (big endian word=64), sample bits (0=8-bit, 1=16-bit), sample rate (0=8363Hz, 1=12.5kHz, 2=25kHz).FA0x
modules and are ignored in versions after the switch to DTM
, they are effectively unusable and can probably be ignored altogether.Going to go ahead and mark this ready for review.
Thanks.
See: https://github.com/libxmp/libxmp/pull/484.
This adds support for more MOD magics that MikMod didn't support before. This should just about cover all of the trivial MOD magics I know of that MikMod doesn't support already.
TDZ#
where1 <= # <= 3
is TakeTracker's magic for modules with between 1 and 3 channels. These are fairly rare but their existence is easy to verify with TakeTracker.FA04
/FA06
/FA08
are MOD magics from the Atari tracker Digital Tracker. They only differ from regular MODs in that they have an extra 4 bytes after the magic of which the purpose isn't obvious. I don't have an Atari Falcon or an emulator setup to test this, so I just made MikMod skip them. They have been commented indicating this. (libxmp and OpenMPT need to be patched likewise.)LARD
andNSMS
are weird one-off MOD magics forjudgement_day_gvine.mod
andkingdomofpleasure.mod
, respectively.This is very low priority, so marking this as a draft until someone figures out what the deal is wrt the Digital Tracker extra bytes.