Using latest AdPlug for Winamp (1.8.2 using AdPlug 2.2.1-1) – no improvement over 1.8.2 (AdPlug 2.0) in terms of loading CMF audio with rhythm mode. At least, that's what I assume is the issue. This affects all of Dan Froelich's music (The Xargon Trilogy, Brix, Solar Winds etc) as well as Traffic Department 2196.
Percussion instruments are played as various melody instruments – 602.CMF from TD2196 sounds like an aural assault from a mantelpiece clock and it's too awful to listen to. There's little significant difference achieved by switching emulator within AdPlug – the timbre changes but the virtual OPL chip sounds like it's in the wrong mode.
Previous bugs here have suggested that this issue was resolved since AdPlug 1.8 for Winamp, but this is not the case – the OPL loader is still as broken as it always was.
CMF rhythm instruments were definitely fixed in AdPlug 2.2 (the CMF player was completely rewritten) so if you're still hearing them as melody instruments there must be something else going on. Are you sure you don't have another plugin handling CMF files instead of AdPlug? Often MIDI plugins will steal this format. If you remove in_adlib.dll from your plugins directory, CMF files should not play at all.
I'm sure – I can tell the difference between Tatsuyuki Satoh's and Ken Silverman's OPL emulators much more clearly in 2.2 than I could with 2.0. I have proved it though by temporarily renaming in_adlib.dll – Winamp deleted the file association in the process and no longer recognised the file at all.
I have attached an actual CMF file that comes out horrible – does this play OK for you? 2.0 has loud sink tapping noise for percussion but 2.2 comes out like a clock striking.
Creative's PLAY.EXE gave the same results on my 486 PC with a real OPL chip, so I would have blamed Dan Froelich for writing some crazy loader (subsequently loaned to Safari for TD2916), except as a fellow Malvineous I figure you've got all his Xargon tunes as CMF already, and they all work for you ...
Well for the record, Creative's Play/SBFMDRV is considered the definitive player, so the idea has always been to get AdPlug to sound as close as possible to that. It's still a little off, but much closer than it has been. Do you mean to say that you have a CMF that a game plays differently to Creative's player? If so, I'm not sure what can be done about that...
Nothing from Dan Froelich or TD2196 plays correctly in PLAY.EXE. I've asked Dan Froelich directly whether he used some sort of funky loader – something's wrong, but I don't know what or why. Did that CMF I attached play all wrong?
(2.0 plays identically to how I remember PLAY.EXE sounding, 2.2 is way out of wack in this regard.)
Traffic Department 2916 track
OK, file doesn't upload with rest of the form ... ;-) File now uploaded,
Got the file - it sounds a little different to play.exe, but still fairly close. I haven't played TD2192 so I'll try it out in the game and see if it sounds any different. If it's like Jill or Xargon then it uses the Worx game library to play CMF files, and it's possible that wasn't implemented entirely correctly. Have a listen to Jill of the Jungle's funky.ddt between the game and AdPlug versions and you'll see that the rhythm mode was significantly improved. Unfortunately due to a lack of documentation about the CMF format, this is all being worked out by trial and error though, which is why it is so difficult to get things sounding correct.
OK:
602.CMF as played in TD2196 under DOSBox -- http://telcontar.net/store/hosted/bugs/602CMF-TD2196.mp3
602.CMF as played in SBFMDRV/PLAY under DOSBox -- http://telcontar.net/store/hosted/bugs/602CMF-PLAY.mp3
Both from DOSBox for perfect comparison. There's something wrong with the instrument selection -- similar but wrong waveform, wrong sustain, and very definitely the wrong amplitude.
Interesting. I'll have to investigate further, but it seems to be one of two things. Either it's running the chip in OPL2 mode, which reduces the number of available waveforms (making the instruments sound quite different), or it's not technically a CMF file, if the game loads the instruments differently to the way it's supposed to. If that's the case, the most likely solution will be a converter to read in the game file and produce a correct CMF that will play with both SBFMDRV and AdPlug.