Desktop Tracker shim issues

Discuss SoundTrackers, shims to QTM, 32bitting and ARMv7 compatibility
Post Reply
JonAbbott
Posts: 1739
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex

Desktop Tracker shim issues

Post by JonAbbott » Sat Oct 29, 2016 5:56 pm

Birds of War and The Exotic Adventures of Sylvia Layne both play some of the samples used in their music at the wrong pitch, when played under the DTT2QTM shim. The music in both cases was composed by the same person using Desktop Tracker.

I've checked the note conversion, which appears to be okay - some games are okay and most samples are correct in these two games, so I wonder if there's an effect that needs applying to the samples to pitch offset them, or a default offset that needs applying to the samples.

andretim
Posts: 15
Joined: Tue Oct 15, 2013 5:29 pm

Re: Desktop Tracker shim issues

Post by andretim » Sun Oct 30, 2016 2:21 pm

QTM is too limited for decent DTT support, for several reasons:
- DTT can have up to 16 channels
- DTT can use a linear mode (if bit 2 of word at offset &84 = 0) like IT or XM, i.e. a mode where internal pitch is expressed as a fraction of semitones (1/32) instead of the usual amiga period. Sliding the pitch by a given amount will sound totally differently in the two modes.
- DTT has some extra sample attributes named "period" and "relative note" which are used to alter the base frequency of the note.

The last feature is probably your problem here. If you can save the DTT file, load it in DigitalCD and start the full screen plugin "TimVis". Press F5 several times till the number shown next to the notes are frequencies. I bet you will see that for notes played at the same pitch (i.e. same horizontal position) it will indicate different values for different instruments (i.e. notes with different colours).

JonAbbott
Posts: 1739
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex

Re: Desktop Tracker shim issues

Post by JonAbbott » Sun Oct 30, 2016 4:48 pm

andretim wrote:QTM is too limited for decent DTT support, for several reasons:
- DTT can have up to 16 channels
- DTT can use a linear mode (if bit 2 of word at offset &84 = 0) like IT or XM, i.e. a mode where internal pitch is expressed as a fraction of semitones (1/32) instead of the usual amiga period. Sliding the pitch by a given amount will sound totally differently in the two modes.
- DTT has some extra sample attributes named "period" and "relative note" which are used to alter the base frequency of the note.
Yes, I read through the spec and realised quite a few features aren't supported by QTM, including several effects.

I spent some time investigating last night and tracked the issue down to the lack of support for the "note" parameter in the samples. I coded a workaround which simply alters the notes in the patterns to correct for the sample "note" offset. It seems to be working okay, both Sensible Soccer and The Exotic Adventures of Sylvia Layne appear to now play correctly. I've yet to test Birds of War, Simon the Sorcerer, Xenon 2: Megablast, Zodiac: Quizmaster or Global Effect.

Ideally I need to 32bit v1.15 of DTT PlayMod, however, it does some fairly scary things with IOC and MEMC, so I put it on the back burner unless it was absolutely necessary.

andretim
Posts: 15
Joined: Tue Oct 15, 2013 5:29 pm

Re: Desktop Tracker shim issues

Post by andretim » Tue Nov 08, 2016 10:14 pm

Jon, I had a play in the past at rewriting some Tracker modules in the past to let the TimPlayer module do the work to get some old demos work on the StrongARM, in other words I wrote shims. I have been recently extending them in the frame of future version 1.25 of the TimPlayer module. So far I have shims for MusMod, TrackerModule, QTMModule, DSymphonyPlayer and DesktopTracker. For the latest I have not much to test it with, so any files to play or games/demos are welcome.

I am also interested in other tracker modules (+files & doc) that I could try to shim.

JonAbbott
Posts: 1739
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex

Re: Desktop Tracker shim issues

Post by JonAbbott » Tue Nov 08, 2016 11:52 pm

andretim wrote:MusMod
You may already be aware, but there are several different versions of MusMod, some with the same version number but different behaviour of some of the SWI's. I implemented several * commands into the shim bundled with ADFFS to swap the behaviour, depending on the game. I don't think the changes affect the tracker side, so it's possibly not applicable to your player.
andretim wrote:For the latest I have not much to test it with, so any files to play or games/demos are welcome.
I am also interested in other tracker modules (+files & doc) that I could try to shim.
I've detailed the trackers that every game uses, this may be useful to you to find the ones you're interested in. I'll drop you an eMail with details soon.

Tracker Module documentation is hard to come by, the only documentation I've found was for Desktop Tracker.

Post Reply