ModPlug Central

OpenMPT => Help and Questions => Topic started by: Mr. Sound-About on August 29, 2013, 09:13:04

Title: Unable to play DSM files...
Post by: Mr. Sound-About on August 29, 2013, 09:13:04
Hello.

Although ModPlug Player can load DSM files, it isn't able to play one of the ones I have. These were taken from a game which used Carlos Hasan's DSM library, and they don't appear to be compressed or encrypted...

http://www.superfighter.com/temp/dsm.rar

Can anyone help?
Title: Re: Unable to play DSM files...
Post by: LPChip on August 29, 2013, 09:54:16
MODPlug player is unfortunately not being developed anymore and isn't open source either. So if it doesn't work, there's nothing we can do to change that.

I would suggest downloading milkytracker. It can open DSM files and then save them as .xm files so they do work in modplug player or other players.

If they don't load in milkytracker either, then either your extraction process did not went well or they actually are encrypted.
Title: Re: Unable to play DSM files...
Post by: manx on August 29, 2013, 12:33:13
These DSM files appear to have a slightly different file header from the file header that OpenMPT and maybe others expect. I changed the OpenMPT code so that it also accepts this header.

The next OpenMPT version should be able to load these files.

For now, you can try the current test build: http://buildbot.openmpt.org/builds/auto/openmpt-r2619.7z (http://buildbot.openmpt.org/builds/auto/openmpt-r2619.7z)
Title: Re: Unable to play DSM files...
Post by: Saga Musix on August 29, 2013, 12:39:24
Thanks to manx for the quick fix. ;)
And also...
Quote from: LPChip on August 29, 2013, 09:54:16
So if it doesn't work, there's nothing we can do to change that.
Please don't speak for others. You're not part of the development team.
Title: Re: Unable to play DSM files...
Post by: LPChip on August 29, 2013, 12:42:49
Quote from: Saga Musix on August 29, 2013, 12:39:24
Thanks to manx for the quick fix. ;)
And also...
Quote from: LPChip on August 29, 2013, 09:54:16
So if it doesn't work, there's nothing we can do to change that.
Please don't speak for others. You're not part of the development team.

I was talking about the closed source MODPlug Player. Are you telling me we actually have the sourcecode for the player?
Title: Re: Unable to play DSM files...
Post by: Saga Musix on August 29, 2013, 13:08:01
We don't, but the way you wrote this can easily imply that there is no way for us to help this person in any way. As you can see, we were very well able to help him to play these files by changing just a few lines of code.
Title: Re: Unable to play DSM files...
Post by: LPChip on August 29, 2013, 13:55:14
Ah, I see. My apologies. That was not at all the message I was trying to relay.
Title: Re: Unable to play DSM files...
Post by: Mr. Sound-About on August 29, 2013, 19:11:10
Quote from: manx on August 29, 2013, 12:33:13
These DSM files appear to have a slightly different file header from the file header that OpenMPT and maybe others expect. I changed the OpenMPT code so that it also accepts this header.

Oh, great. I figured this may be the case, but I have no "normal" DSM files to compare against these. Thanks for having a look.

So I take it the header difference denotes a different revision of the DSM format, yes? It's nice to know that these tunes are now supported, in case anyone else comes across files with the same header.

Quote from: manx on August 29, 2013, 12:33:13The next OpenMPT version should be able to load these files.

Nice. Will the build you sent along be able to download that version as an update? Or should I check back here for it?

Quote from: manx on August 29, 2013, 12:33:13For now, you can try the current test build: http://buildbot.openmpt.org/builds/auto/openmpt-r2619.7z (http://buildbot.openmpt.org/builds/auto/openmpt-r2619.7z)

Works perfect, thanks. I'm glad I came back to check the thread (I almost didn't after reading that first reply).
Title: Re: Unable to play DSM files...
Post by: Saga Musix on August 29, 2013, 19:26:23
Quote from: Mr. Sound-About on August 29, 2013, 19:11:10So I take it the header difference denotes a different revision of the DSM format, yes?
It's not really a different format revision, these files just miss the first 8 bytes ("RIFF" signature) at the beginning and some fields there are reordered for whatever reason. The actual content of these files follows the same format as other well-known DSM files.

By the way, can you confirm that OpenMPT plays these files as expected? They sound a bit poor to me, so there might be some things that are not interpreted correctly.
Title: Re: Unable to play DSM files...
Post by: Mr. Sound-About on August 29, 2013, 22:36:19
Quote from: Saga Musix on August 29, 2013, 19:26:23By the way, can you confirm that OpenMPT plays these files as expected? They sound a bit poor to me, so there might be some things that are not interpreted correctly.

Yes, now that you mention it there do seem to be some discrepancies. The most obvious one I noticed was incorrect tempo on some (but not all) of the tunes.

If someone wants to check against the game they are from, which is the only other way I know how to play them, then here's a link to it...

http://archive.org/details/BattleoftheEras_1020

Of course since its a DOS game, DOSBox or a PC running DOS natively [!] will be needed.

The developer does not have source code for the DSM player he used, I'm afraid. So comparison may be the only way to determine what's going on.
Title: Re: Unable to play DSM files...
Post by: Saga Musix on August 29, 2013, 23:17:34
Thanks, I'll look into it when I find some time. Looking at the debugger, several effects are simply not imported at all, so I'll have to find out what they are actually supposed to do.
Title: Re: Unable to play DSM files...
Post by: LPChip on August 30, 2013, 13:49:50
While researching DSM, I noticed there are several different tracker formats. Thats why I suggested MilkyTracker. Maybe it plays fine in MilkyTracker?
Title: Re: Unable to play DSM files...
Post by: Saga Musix on August 30, 2013, 13:53:24
No, Milky's code is identical to ModPlug's code before the fix.
Title: Re: Unable to play DSM files...
Post by: LPChip on August 30, 2013, 16:13:29
Aha... I guess I should shut my mouth... You clearly know a lot more about the subject than I do, and you have the brains to make suggestions like me... :nuts:
Title: Re: Unable to play DSM files...
Post by: Mr. Sound-About on September 03, 2013, 01:00:23
Quote from: Saga Musix on August 29, 2013, 23:17:34
Thanks, I'll look into it when I find some time.

Cool, thanks. I look forward to the next update.

Quote from: Saga Musix on August 29, 2013, 23:17:34Looking at the debugger, several effects are simply not imported at all, so I'll have to find out what they are actually supposed to do.

Ah. Well, this may help:

http://www.superfighter.com/temp/beras-dsm.rar (http://www.superfighter.com/temp/beras-dsm.rar)

It's the full set of DSMs from the registered version of the game, Battle of the Eras, which was recently released as freeware (http://www.oldergames.com/beras). The link in my first post contained music from the shareware version of the game.
Title: Re: Unable to play DSM files...
Post by: Saga Musix on September 03, 2013, 10:16:53
Actually, the most helpful thing to have would be the source MOD/S3M/whatever modules (since I could just look what the missing effects are supposed to do), but those will probably be impossible to find.

Edit: There was a very obvious mistake in the loader which prevent most standard MOD effects from being loaded. I also found a few more DSM files of which I can retrieve the source files, so that is going to help a lot.
Title: Re: Unable to play DSM files...
Post by: Saga Musix on September 03, 2013, 16:42:54
http://sagagames.de/stuff/mptrack.exe should play pretty much all files correctly. :)
Title: Re: Unable to play DSM files...
Post by: Mr. Sound-About on September 04, 2013, 22:56:15
Quote from: Saga Musix on September 03, 2013, 16:42:54
http://sagagames.de/stuff/mptrack.exe should play pretty much all files correctly. :)

They all sound great now. Thank you very much.