Well, the fact that the low octaves make up for the high sampling rate pretty much tells you already that your assumption of 33075 being the middle-C frquency is wrong. The original tracker that was used to create the songs (and thus, the CDFM format) may have had a completely different idea of what middle-C is than ST3 had - this is not a rare thing, e.g. C-2 in ProTracker is C-4 in ScreamTracker/Fasttracker, which in return is C-5 in Impulse Tracker.
Aha, that's what I am missing! Sorry, despite listening to mods for years, this is my first attempt at actually trying to work with them! I didn't realise the idea of what middle-C is varied so much. Suddenly explains why the Halloween Harry/Alien Carnage songs were all a couple of octaves too low...
Incidentally, 33075 is exactly two octaves above ProTracker's middle-C frequency, so you can safely assume that the octaves found in those files are ProTracker octaves and need to be transposed upwards by two octaves (and the sample frequency needs to be divided by 4) to map the CDFM middle-C to ScreamTracker's middle-C.
While this makes perfect sense, it raises more questions! I transposed the notes up by two octaves and set the frequency to 8268 and it sounds really good. I tried 8363 too but it was off-key, so is 8268 a ProTracker default? I can't seem to find a mention of this at present.
However this now transposes all the Adlib instruments up by two octaves! I put an exception in the converter to only transpose notes on the sampled channels and this seems to produce the right output, but does seem a bit weird the two instrument types would use different middle-C notes. See what you think:
z66ep1v3.s3m z66title3.s3m. Perhaps I should be transposing Adlib notes too but adjusting the middle-C frequency for those instruments? But by only transposing the sampled notes they all end up around similar octaves so maybe this is best... (Incidentally if you know of any documentation explaining how the ST3 middle-C frequency is applied to Adlib instruments I could really use it!)
I'm not sure about that one, but you may know that the CDFM format is somewhat related to 669 (made by the same person), which also has some magic numbers regarding tempo and speed which are different (tempo 78, speed 4) from those usually found in ProTracker-like formats (tempo 125, speed 6). It may simply be an idiosyncrasy he came up with while developing his player routines. One thing that could also come into play are PAL vs NTSC timing differences here.
Oh wow that's amazing, I had no idea! For some reason I assumed .669 was an old format from the Amiga, I didn't realise it was a PC tracker! And by Renaissance! Feeling stupid now :-) At least it helps explain some magic numbers.
I wouldn't be surprised if that's a DOSBox issue. I can probably confirm this on a real machine if you really want it, though.
Oh thanks for the offer, you could be right there. I do have a few DOS machines around so I'll save you the effort and try it next time one is plugged in.
In the intro tune I'd even say that some of them are too loud in ScreamTracker, not too quiet. I'm sure this can depend on factors such as if ScreamTracker uses stereo or mono output.
Yes I thought the same thing about the intro tune, but some of the others are really quiet. Have a listen to
z66ep3v3.s3m, the "twinkly" Adlib is so quiet. Maybe the 0-15 volume doesn't translate linearly to S3M's 0-63? Not sure how you would go about testing that...
BTW: Your updated conversions seem to lack the "pattern jump" command in the last patterns to jump to the correct restart position.
Thanks for the conversions, btw. I've been searching for this soundtrack in a "normal" mod format for years, I even asked CCCatch if he still has the files, and while he said that he'd have to look at his parents' place, I haven't heard back from him since then.
Oh you've seen my earlier attempts?! They were hacky as I had to hard-code the offsets of each pattern, but now I have rewritten everything from scratch to handle patterns correctly. Once I've gotten everything sorted I'll gladly put up a link to the fully converted soundtrack if you'd like.
The pattern jump I added by hand previously but I'm in two minds whether I should put it in automatically. It complicates the conversion because you could theoretically have the last pattern played twice, but you would only want the jump command the second time the pattern was played. So you'd have to duplicate the pattern just to add the jump command, which no longer matches the original song... I think I will leave it out and it's something that can be added by hand along with titles for a "curated" conversion.