Previous Page | Next Page

by itsacatfish at 3:21 AM EDT on April 7, 2010
oh, and length is done a bit wierdly:
    f0    1E    30 units    (quaver)
    f0    3C    60 units    (crotchet)
f0    81    00    128 units    
f0    82    00    256 units    
f0    82    1E    (2*128)+30 units    
f0    9e    00    (30*128) units
f0    81    80    (30*128) units    
f0    81    80    00    (128*128)+92
by unknownfile at 10:07 AM EDT on April 7, 2010
i can't shit code on demand
I just won't go away! by itsacatfish at 11:09 AM EDT on July 19, 2010
someone else could it turns out - hope your constipation eases off soon!

Converts bms to midi. A few bugs; and it has a 30 second time-out: if anyone can improve on that then I'll pass the sauce (that's the source).

This format is still used for sequenced files in super mario galaxy 2, so it certainly ain't dead!

Any games earlier than twilight princess (wind waker, mario sunshine) use an older version which is quite drastically different - so no support for those BMSes.

I've also worked out basically everything else; the relationship between .bnk and .wsys; sample looping and tuning; instruments splits; a lot on how sound envelopes work. It's therefore possible to play the midi files back using a soundfont, but it's slow, manual work.

Of course being a non-coder, I've got no idea how to go about this other than manually - but it's still very nice...

by Lunar at 12:50 PM EDT on July 19, 2010
amazing. well done! will be fun and interesting checking out the sequence data for these songs.
by Mouser X at 1:00 PM EDT on July 19, 2010
Wow! I'm quite impressed! I'm slightly disappointed that, at least as near as I can tell, it's a "web app" and not something I can download and use later. It'd also be nice if the various bugs were worked out. There were numerous BMSes that didn't seem to convert (one gave a "divide by zero" error), and some sounded off-key.

What I'd really like to see is a program that's able to play the BMSes in their native format with instruments/etc. in their native format as well. If this were accomplished, then an xSF ripped/emulated format wouldn't be necessary. Obviously, that's not going to happen soon (if ever). Nonetheless, nice work! This is pretty cool! Hopefully, someone can help you with the sample/instrument bank stuff, so a program could be created to pull that out in conjunction with the BMS it goes to.

Anyway, congratulations. Hopefully someone else fiddles with the source and creates a non-buggy EXE that gathers the instrument data as well. :P Mouser X over and out.
by itsacatfish at 3:39 AM EDT on July 20, 2010
hmm I see you uploaded - I thought we'd corrected the division by zero error - but the fact that it fails to find the track list probably means it's an older form of bms... which game is it from?
by Mouser X at 4:03 AM EDT on July 20, 2010
I haven't uploaded anything. I simply checked out a few of the ones already listed that looked interesting. I just went back again, and got a "divide by zero" from and I assume these are from Twilight Princess, but since I didn't upload them, I don't actually know that for certain.

I also had a few different ones time-out (30 seconds or whatever), but I didn't bother getting the links, since you already know about the existence of that problem. Though, I did find this worth mentioning. gives the 30 second time-out error, but if you click on "download midi", it still works. As near as I can recall, that's the only one that does that though. And for future reference, I have no intention of uploading any BMS files. If I mention any problems in the future, it's almost certainly from a file already on that site.

As I already said though, I'd be much more interested in keeping this stuff as close to its original format as possible, instead of going through a conversion process. I understand there's a ton of difficulty involved in that, so I don't actually expect that to happen. Really, I'm quite impressed with what you've already done (and had help doing)!

You know though, regarding MIDI conversions, I think one of the things that really "turns me off" towards MIDI, is all the hassle necessary to get it to "work" correctly. Sure, it works "out of the box", but only on the rarest occasions have I heard a MIDI that sounds good. Usually, you have to get some kind of sample bank, and often, just one won't do, but you'll need all sorts of them to get different MIDIs sounding correctly. In my opinion, MIDI is an old, outdated format. If you're going to distribute sequenced music, it should be done using a format that contains its sample information. For example, IT (Impulse Tracker), S3M (ScreamTracker, I think), MOD (note: MOD is playable in Rockbox, and is thus my personal preferance), and a number of others. Obviously, at this early stage, this wouldn't be very useful, since the current program (I think it's written in Java?) doesn't handle sample data anyway.

Basically, while I commend your efforts (really, I'm quite impressed! Well done!), the current implementation isn't something I find useful. Others most certainly will (no doubt. MIDI is still widely used. My guess is it's because the format has been around so long, that it's essentially become the "standard"), but for me to consider it useful, it would have to convert to a format that doesn't require that I hassle with sound banks, and such. For me, for now, it's a novelty. Aka, something neat, somewhat fun to play with, but nothing that's actually going to be used on a wide basis.

Please don't misunderstand me. What you've done is, to me, quite amazing. The potential is wonderful! But it's at such an early stage that I won't be using it. Others most certainly will use it (I foresee Lunar(y) complaining about MIDI conversions(or very slight alterations) being posted by newbs who say it's their own work ("It's a ReMix I did! See, I changed the instruments/tempo!")), and some of those uses will be good, legitimate uses. Since my use is for listening purposes (and not compositional purposes, which this tool could be good for), it's not something I can use, currently. Nonetheless, thank you very much for what you've done! It's certainly a necessary step in getting it to the "useful" stage I'm talking about. Mouser X over and out.

edited 5:04 AM EDT July 20, 2010
by itsacatfish at 6:06 AM EDT on July 20, 2010
Those other formats look very promising! As a composer/arranger, I was interested in seeing the actual scores of the files; although I'm interested in playback too! I've got good playback quality using soundfonts, but I can't really get into that road.

I understand your desire to remove 'the middle man' in this and convert directly to a playable format and that is my overall aim, but for now, the soundfont playback system makes me quite happy:

Ordon Ranch
Fyrus Battle
Zelda Gallery

Perhaps I'll look into MOD files etc now - they seem to be like midi files, but with the soundfont (instrument data) included: both parts of my current engine rolled into one; which would be ideal!

With regards to the staff_roll BMSes, they are from Twilight Princess, but don't contain any sequence data; I don't really know what they're doing there.

edited 6:08 AM EDT July 20, 2010

edited 6:12 AM EDT July 20, 2010
by Lunar at 9:34 AM EDT on July 20, 2010
if you use any tracked format, use IT. S3M and particularly MOD have more limits on what they can contain.

however i will say the way tracked music is constructed is very different from MIDI data. i'm guessing with the BMS sequences they were originally authored as MIDIs to begin with, so they translate back easily. i don't think it'd be so streamlined with tracked formats. myself, i wouldn't recommend it, and think it'd be better to look into a MIDI+DLS/SF2 or xSF solution.
by SmartOne at 12:43 PM EDT on July 20, 2010
Maybe the Twilight Princess Soundtrack could be fixed so it doesn't clip. (Nice job, Nintendo.)

Previous Page | Next Page
Go to Page 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Search this thread

Show all threads

Reply to this thread:

User Name Tags:

bold: [b]bold[/b]
italics: [i]italics[/i]
emphasis: [em]emphasis[/em]
underline: [u]underline[/u]
small: [small]small[/small]
Link: [url=]Link[/url]


HCS Forum Index
Halley's Comet Software
forum source