Skip to content

CMF to VGM?

Technical discussion about the VGM format, and all the software you need to handle VGM files.

Moderator: Staff

  • Tom Offline
  • Ragequit Member
    Ragequit Member
  • Posts: 496
  • Joined: 2011-11-30, 17:26:44
  • Location: Italy
  • Contact:

CMF to VGM?

Post by Tom »

So, a few hours ago I was looking for more PC games with good soundtracks to make VGM rips of them, and I found an old CD with some Epic Megagames on it. While checking the files, I noticed that Epic often used standard CMF files, although with different extensions, but still easily recognizable by the well-known "CTMF" signature and the MIDI-like file structure.
As an experiment I wanted to see if vgmplay.exe could play those, and to my surprise it worked :O
So, I wonder how feasible a cmf2vgm converter would be, it would be useful to create VGM rips of some Epic Megagames without dumping and trimming and whatnot.

I include the CMF files (with proper extensions) from six random games here: http://dl.dropbox.com/u/17315175/cmf.rar
I like brix\SFILE3.cmf, for example.
Also known as nineko.
  • User avatar
  • MaliceX Offline
  • Posts: 226
  • Joined: 2012-09-29, 11:45:48
  • Location: Australia
  • Contact:

Post by MaliceX »

List of games from Epic Megagames/Safari Software that used CMF music (mostly composed by Dan Froelich):
There's probably more but I don't have them on me. :) (I'm sure you could easily source the CMF's, I have them on hand but i forgot to categorise them :oops:) EDIT: Here, unsorted: https://dl.dropbox.com/u/1287967/danfroelich%20cmf.rar

While there were a few good tunes here and there, Brix II I think was the worst soundtrack of them all (though I didn't like much of Dan Froelich's music to begin with). Wouldn't it be enough to simply play back the CMFs in DOSBOX and dumping them that way?

NB: Oddly enough there's a ROL2CMF converter as well and it seems to lose a lot of data in the process as well...mainly pitch modulation stuff.

EDIT: In the meantime, here's the ripped CMF soundtrack to Pea Shootin' Pete (Dan Froelich, David Bredesen): https://dl.dropbox.com/u/1287967/pea%20 ... %20cmf.zip
Last edited by MaliceX on 2012-10-25, 16:01:32, edited 3 times in total.
-dj.tuBIG/MaliceX
  • Tom Offline
  • Ragequit Member
    Ragequit Member
  • Posts: 496
  • Joined: 2011-11-30, 17:26:44
  • Location: Italy
  • Contact:

Post by Tom »

Disregard what I wrote before, I was doing something wrong.
CMF files from "Jill Of The Jungle" and "Solar Winds" have been added to the archive in my previous post.
Also known as nineko.
  • User avatar
  • MaliceX Offline
  • Posts: 226
  • Joined: 2012-09-29, 11:45:48
  • Location: Australia
  • Contact:

Post by MaliceX »

See the unsorted archive in the archive. Alternatively, look at the .ddt files on the game files. ;)
-dj.tuBIG/MaliceX
  • Tom Offline
  • Ragequit Member
    Ragequit Member
  • Posts: 496
  • Joined: 2011-11-30, 17:26:44
  • Location: Italy
  • Contact:

Post by Tom »

Yes I was doing a very stupid mistake, I edited my previous post (you just don't see that because I have mod powers), and I added two more games in the archive in the first post too ;)
Also known as nineko.
  • User avatar
  • MaliceX Offline
  • Posts: 226
  • Joined: 2012-09-29, 11:45:48
  • Location: Australia
  • Contact:

Post by MaliceX »

WinRipper'd the Highway Hunter CMF's just now and upped in my post. Some of the CMF's crash AdPlug for some reason though. :s
-dj.tuBIG/MaliceX
  • Tom Offline
  • Ragequit Member
    Ragequit Member
  • Posts: 496
  • Joined: 2011-11-30, 17:26:44
  • Location: Italy
  • Contact:

Post by Tom »

Another game that uses CMF files is "Traffic Department 2192", by Safari Software. I added it to the RAR file.
Also known as nineko.
  • User avatar
  • ValleyBell Offline
  • Posts: 4746
  • Joined: 2011-12-01, 20:20:07
  • Location: Germany

Post by ValleyBell »

CMF2VGM would be a nice idea, but there're 2 things:
1. If I write one, it has to behave exactly the same as Creative's CMF driver.
2. It may be possible, that some games use their own CMF engines. Most of them don't seem to need SBFMDRV.COM - is the CMF engine compiled into the games?
I was able to find the string "FMDRV" in the EXE of "Dyna Blaster", but not in "In Search of Dr. Riptide". (I wasn't able to find anything about it in its RAM either.)

I have rips of both games, btw. I also cracked Riptide's archive format a while ago.

3. PLAY.EXE doesn't loop the songs and the DYNA.EXE loops only certain songs. I guess this works like

Code: Select all

If (song_is_not_playing) Then
    PlaySong()
End If
Conclusion: I'd prefer a direct game rip, if possible, especially if the songs loop. Also the CMF players act strangely after the song ends (they sort of reset the chip). It sounds better ingame.


btw: The Highway Hunter CMFs are very interesting. The all contain track/instrument names and lots of other things including something that looks like executable code.
Some of them crash VGMPlay, too and don't even play with Creative's offical CMF player. (SBFMDRV.COM + PLAY.EXE)

In 123_0010.CMF the MIDI data pointer points to 0x115E, but the file has only 0x101C bytes. (I guess that's the case with all not-working CMF files.)
Files with an incorrect MIDI data offset are: _0000, _0006, _0009, _0010. _0007 seems to contain some directory names.
  • witchspace Offline
  • Posts: 4
  • Joined: 2014-06-20, 18:02:46
  • Location: The Netherlands

Re: CMF to VGM?

Post by witchspace »

Thanks!
Kiloblaster and Xargon have more music files in my copy, maybe shareware versus registered versions?

Post by NewRisingSun2 »

I made a CMF2VGM utility that runs under DOSBox, using SBFMDRV of a user-chosen version. Source code is included. Read CMF2VGM.TXT for instructions on how to use the program.
  • User avatar
  • kyusawamura Offline
  • Posts: 33
  • Joined: 2015-06-08, 20:42:22
  • Location: Argentina
  • Contact:

Post by kyusawamura »

NewRisingSun2 wrote:I made a CMF2VGM utility that runs under DOSBox, using SBFMDRV of a user-chosen version. Source code is included. Read CMF2VGM.TXT for instructions on how to use the program.
Thank you for doing so much DOS stuff! :mrgreen:
Post Reply