• Topic Archived
You're browsing the GameFAQs Message Boards as a guest. Sign Up for free (or Log In if you already have an account) to be able to post messages, change how messages are displayed, and view media in posts.

User Info: WizardStan

WizardStan
10 years ago#1
Someone asked for an M to MID converter, so I spent the past few days writing a MIDI player/MID file writer. I'll post a Windows binary tomorrow or Tuesday: all I have right now is a Linux executable.
But MY GOD! MIDI music has come a long way since the early to mid 90s. I don't remember the music sounding this good 15 years ago. The default sound font that comes with Timidity wasn't very good, but when I installed a slightly more complete font file... just WOW! It was like an orchestra was playing just for me. The MIDI music totally usurped the FM music as my favorite, even though FM has been my preference for the last 15 years.

User Info: WizardStan

WizardStan
10 years ago#2
As promised:
http://www.rebirthofxeen.com/files/xeenmusic.exe
to use:
xeenmusic <music.m> [-M [outfile.mid]]
music.m is the M file you want to play. If you don't supply any other arguments, it will play the FM channels, as if through an adlib or SB card.
Given the -M option, it will switch to playing the MIDI music on whatever you've instructed Windows is the default MIDI device. If you then specify outfile.mid (or any name), it will first write a MID file before playing. The source can be found at http://www.rebirthofxeen.com/files/musictest.tar.gz if anyone wants to play around with it.
It uses the PortMidi API.

User Info: WizardStan

WizardStan
10 years ago#3
And for those that don't have it, or have forgotten:
http://www.rebirthofxeen.com/files/extract.exe
extract.exe <CC_file> <fileToBeExtracted>
and a (mostly) complete list of files can be found at http://xeen.wikia.com/wiki/Filenames
As always, let me know if there are any problems.
Incidentally, the default MIDI font that comes with Windows doesn't seem nearly as good as the one I found. In linux, changing the font file is as easy as updating a config and restarting the service. Does anyone know how to change it in Windows?

User Info: CityHuntr

CityHuntr
10 years ago#4
Some sound card manufacturers have a program to change/create soundfonts for their sound cards. But if you're stuck with midi emulation (Microsoft GS Wavetable SW Synth) then I think you're stuck with those samples.
http://www.pcurzi.net/

User Info: WizardStan

WizardStan
10 years ago#5
One more reason why Linux is better than Windows, I guess. :)

User Info: MalcolmMasher

MalcolmMasher
10 years ago#6
This is awesome. Many thanks, WizardStan. Definitely making a Winamp playlist out of these. Well, most of them; a few got mangled in the MIDI transition. They're still recognizable, but the instrument balance isn't triggering any nostalgia. Would a new 'sound font' help with that?

Also: It has been a couple years, but in DARK.CC, I believe SF09.M is the Darkside smithy theme. Presumably SMITH.M is the Darkside training theme.

User Info: Sheltem4887

Sheltem4887
10 years ago#7
this sounds awesome (no pun intended). however, im not quite as computer savvy as you guys, is there a way to post the midi files online, or to give a simpler explanation on what to do??? many thanks, i really want to hear the music/sounds :)

and it this also possible for mm3??? thanks again!

"It is always exhilarating to see adventurers such as yourselves."
-Princess Roxanne

User Info: WizardStan

WizardStan
10 years ago#8
I'm not going to risk posting the MIDI files. I'm already skirting the borders of legal reverse engineering, I don't want to draw attention with blatant copyright infringement. If someone else were to do so however, that'd be fine.

Anywho, here's some (hopefully) simple steps to getting it to work on your own.
Download the extract.exe and music.exe files I posted earlier, and copy them into your Xeen directory.
Look at the <url=http://xeen.wikia.com/wiki/Filenames>filenames</url> page, and find a .M file you want to try. This next part assumes some knowledge of the command line. Start a command window, and cd to your Xeen directory. Type
extract DARK.CC BIGTHEME.M
for example. Replace BIGTHEME.M with whatever you want, and DARK.CC with XEEN.CC as needed. It may work with MM3, but I haven't actually tried it. I suspect it won't though. The MM3 and MM4/5 CC files are almost the same, but just a little different.
Anywho, once you've extracted the .M file, you can play it with
xeenmusic BIGTHEME.M
that will play the FM music by default. To play midi, type
xeenmusic BIGTHEME.M -M
to record the MIDI to a file, type
xeenmusic BIGTHEME.M -M BIGTHEME.MID

Note, there are some problems with handling certain midi messages, notably the volume control, so some instruments may not sound quite right. Timing is a little off as well. I was working on a fix last week, and would have had it up today if not for the fact that I forgot about it. Look for an update tomorrow with even more beautiful sounding features :)

User Info: Sheltem4887

Sheltem4887
10 years ago#9
thanks wiz, i was able to figure it out. sounds good :)
"It is always exhilarating to see adventurers such as yourselves."
-Princess Roxanne

User Info: WizardStan

WizardStan
10 years ago#10
executable: http://www.rebirthofxeen.com/files/xeenmusic.exe
source code: http://www.rebirthofxeen.com/files/xeenmusic-src.rar
I've fixed the volume code and the pitch wheel code. SF09.M should sound a lot better now.
Same rules apply: no arguments and it plays the FM music, give it -M and it will play midi, give it -M FILENAME and it will save the file.
New features here: instead of -M (for general Midi) you can use -C for Canvas Midi. The Canvas used different instruments for a different "feel" to each song. Give it a try.
Also, when specifying MIDI (or Canvas), it now lets you select the MIDI playback device you want to use. You can use the regular Microsoft Midi Mapper, Wavetable Synth (I can't actually tell a difference between the two, honestly), or throughput device if you have an external Midi device, or you can be bold and try to build the Timidity open source synthesizer.
Let me know how that works out. Suggestions welcome!
  • Topic Archived

GameFAQs Q&A