Previous Page

by Peppyman at 5:47 PM EDT on July 20, 2009
Yes it's not Bowser's battle theme it is the variation where he is spinning on the shell as it adds a single instrument which is sequenced.
by agu fungus at 12:56 PM EDT on July 21, 2009
^ And when his tail is burning, before he spins on his shell, you can hear some drums in addition to the choir.

Also, the full intro for Megaleg, plus a sequenced variation before climbing on top of the boss. The track "To the Gateway" has a third variation, which adds some sequences to the song. The jingles are sequenced, too.

I don't know what other variations it has. Then there's Donkey Kong Jungle Beat, fully sequenced and dynamic. Mario Kart Double Dash has sequenced tracks, mainly the Title and others.
by bxaimc at 3:35 PM EDT on July 21, 2009
Not sure about MK:DD's title screen but I definitely know the menu/select bgm is sequenced.
The course select bgm is also sequenced in Super Mario Galaxy btw.
by holyice7 at 12:56 PM EDT on July 22, 2009
Is that enough crap to try and put together a player?
by hcs at 4:11 PM EDT on July 22, 2009
Sadly, attempts to build a player out of crap has resulted in only partial success. I don't think the amount of crap is the issue.
by valiant at 5:07 PM EDT on July 22, 2009
Just ripping the games with the silent SFX method would make much more sense.
by Peppyman at 1:44 PM EDT on July 23, 2009
Yes well it looks like there is plenty of sequenced music to be had then! The problem is in game alot of nintendo games don't allow SFX to be disabled which is why we need this music format to work.
by hcs at 1:46 PM EDT on July 23, 2009
We have ways of making you not talk.
by Mouser X at 2:13 PM EDT on July 23, 2009
I think the method that Prime Blue is refering to is the method he used to create the Twilight Princess rip. That is, litterally delete the sound effects from the game's data. If the SFX are gone, then they certainly can't be played while the music is running.

It should be noted that, if that's the method he's refering to, my description of that method is overly simplified. If I recall correctly, it was a lot more work than simply deleting the SFX (some SFX are actually used as instruments, in different areas/songs, so deleting them removes instruments, depending on the context. At least, I think something like that took place). So, although it's "easier" to do the SFX removal method, it's still not something your average person is going to be able to do (but, if they do decide to do it, it'd be easier than learning Wii/NGC assembly to rip the driver/data out of the game).

So, theoretically, Prime Blue's method does make "more sense." But, a problem with that method is that it requires a line-in recording, which is going to end up as a non-looping format. Once recorded, if you want it looped, you'd have to manually add the loop points in yourself. Also, because it's now a streamed format (a recording of a sequenced format), it is almost certainly going to be significantly larger than it would be if it were a ripped format. On the other hand, it will be in a format that is much more available to the average person as well. How many people can play MP3s (on their computer, iPod, portable media player, etc.)? Essentially everyone can. How many people can play WSF/GCSF/3SF/CSF? No one can (currently. Personally, due to the similarities involved, I say just call both NGC and Wii rips as WSF. Or RSF for Revolution). Which, I believe, is another reason he says it makes more sense. And of course, because it's a line-in recording using the original hardware, the audio quality will be as close to the real thing as you can possibly get. Whereas, with a ripped/emulated format, there are almost always going to be differences and inconsistancies with the playback, when compared to the real thing.

Just thought I'd throw in my thoughts on this. Personally, I'd LOVE to have a ripped NGC/Wii format. There are tons of games out there with great music, that we don't have the music to yet. I think it'd be a great thing to have. But, that's me. Mouser X over and out.
by holyice7 at 3:18 AM EDT on August 5, 2009
Hell, I'd be ABLE to help with finding loop points if a few people collab on Prime Blue's TP method. I think the demand for Sunshine and Mansion is big enough to at least go through the effort for those two if creating a GCN ripped format is too much for so few games.
by valiant at 2:05 PM EDT on August 5, 2009
I was bored yesterday. In fact, so bored that I decided to rip Double Dash!! – which, as it turns out, uses quite a few sequences.



I've seen Mike's release from 2003 on Galbadia Hotel, but it contained sound effects for most of the tracks. Also, Nintendo apparently doesn't know how to set loop points properly in their streamed files, so all of them either contain clipping or single channel volume changes. Thus, I manually looped every streamed file, don't bother with the glitchy ASTs anymore (again, not the fault of vgmstream but Nintendo's sound staff).

Download (MP3):
MEGAUPLOAD

Download (FLAC):
MEGAUPLOAD

Password is primeblue.

edited 2:07 PM EDT August 5, 2009
by bxaimc at 2:39 PM EDT on August 5, 2009
Nice work Prime Blue :)
by holyice7 at 8:06 AM EDT on August 8, 2009
That is completely awesome in every possible way. What are the odds of this happening with Luigi's Mansion or Super Mario Sunshine?
by valiant at 9:31 AM EDT on August 8, 2009
I don't know...bad? Bad odds?
by holyice7 at 2:01 PM EDT on August 8, 2009
Damn. T_T
by marcusss at 2:11 PM EDT on August 8, 2009
Thanks alot for this :) You always do great rips Prime Blue
Reverse Engineered by itsacatfish at 9:36 AM EDT on April 6, 2010
Nobody probably cares about bms anymore, but i reverse engineered the format with only a few unknowns.
I'm not a programmer so i can't do anything useful with this stuff but maybe someone here could.

MAIN HEADER                            

c1    xx    xx    xx    xx    track list offset \\where does the track list start?
d8    62    00    78     unknown    (always the same)
e0    xx    xx            tempo \\in beats per minute
f0    (xx)    xx length of tempo
c7    xx    xx    xx     loop to offset \\where does it loop to
ff

TRACK LIST                    
c1    xx     track number
xx    xx    xx            track offset            
                        
f0    xx    xx            complete length        
c7    xx    xx    xx     loop to offset \\where does it loop to
ff

TRACK HEADER
f9    00    00 always the same        
e2    xx             unknown
e3    xx    (e3    xx)     instrument
b8    00    xx         volume \\up to 7F
b8    02    xx         unknown \\up to 7F
b8    03    xx         pan \\from 00 (fully left) to 7F (fully right pan)

b9    01    xx    xx     pitch \\for pitch bending
d8    6e    xx    xx     vibrato
d8    64    xx    xx     unknown
d8    6f    xx    xx     unknown
etc...

MAIN DATA
xx    01    xx     note - note 1 on - volume \\note - centred at 3C (middle C) volume up to 7F
f0    (xx)    xx delay \\(length of note)
xx    02    xx     note - note 2 on - volume
f0    (xx)    xx delay \\(length of note)
81    82 note 1 off - note 2 off
repeat....

AND...
c3    xx    xx    xx reference (offset) - some parts of track stored in other part of score

when you get to dynamic tracks, things get a bit more complex, but that's pretty much it for normal tracks

edited 9:52 AM EDT April 6, 2010
by arbingordon at 2:22 PM EDT on April 6, 2010
imma bug UF about this ASAP
by unknownfile at 3:54 PM EDT on April 6, 2010
oh u
by arbingordon at 3:56 PM EDT on April 6, 2010
dammit i didnt get to D:
UF shit a magic-taculous plugin that'll play this stuff please
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
etc...
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!

http://bms.learnpad.net/

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 b010.bms - 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 staff_roll01.bms and staff_roll02.bms. 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. Kakariko.bms 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
Twilight
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.)
by Elven Spellmaker at 10:36 AM EDT on September 1, 2010
About the 30 second limit is not the script's fault, but the server's.

If you have access to the sever settings then you can up the limit in the PHP.ini file.

If not try adding:

set_time_limit(0);

at the beginning of the script and maybe @flush(); at the end.

Hmm...

I do believe also if you are using Apache you can set a .htacess: php_value max_execution_time <Insert Max Number Here>

(Someone do correct me if I've gone crazy with any of those suggestions.)
by valiant at 6:47 PM EDT on September 8, 2010
The staff roll composition were several prerecorded audio files. If I remember right, the BMSs just pointed to the streamed files.

Could you elaborate on the method you are using to create the soundfonts? I can't imagine this being possible as an automated process, with all the loop/reverb/etc. values for the instruments having to be manually set and so on.
by arbingordon at 9:02 PM EDT on September 28, 2010
bump
Could you elaborate on the method you are using to create the soundfonts? I can't imagine this being possible as an automated process, with all the loop/reverb/etc. values for the instruments having to be manually set and so on.
by itsacatfish at 7:46 AM EST on November 9, 2010
Sorry, i'd just assumed this thread had been forgotten deep in the archives...

Here's my elaboration:

The *.bnk files contain the Instrument data in the INST section. These contain a string of upper limits at which each sample is used, and offsets and bank numbers referencing the location of the sample in the .wsys files.

The .wsys files, as already worked out, contain a list of samples within each .aw files. This includes the sample rate, the start offset and length, which note it is, loop data etc.

The INST values within the .bnk files also contain offsets linking to the OSCI section within the same file. This section contains two offsets referencing the ENVT section.

The ENVT section contains envelope data - attack, hold, decay, release - in the form of (Time | Volume). I've worked out what refers to what, but not the scale, so I can't really use them yet...

The LIST section in that file is in the right order so that "instrument 0" in the .bms files is the first instrument in the list.

That is just about all the data required to make a soundfont, and I've just input it manually into Vienna soundfont editor. It should theoretically be possible to make the soundfont automated: the only part of me creating the soundfont that doesn't involve leafing through data is naming the instruments...

Unfortunately, the person who wrote the BMS program, basically won't do it anymore. I've solved almost all the bugs that are still present in the program, and done loads more background work, but now I need a programmer to write it all up...

...*nudge* *nudge*
by Lunar at 11:09 AM EST on November 12, 2010
i was just thinking about super mario sunshine again, funnily. is there still no good, complete rip of that? kind of amazing if not...
by furrybob at 1:12 PM EST on November 12, 2010
I was actually just thinking about ripping that the other day. I nulled all the non BGM samples and loaded it in dolphin, but it turns out that Dolphin's audio plugins need a bit more work done on them. The DSP HLE plugin didn't have proper stereo separation, and the LLE plugin crackled a bit. And I don't have a Wii/GC at college with me so...
by arbingordon at 2:54 PM EST on November 12, 2010
i was just thinking about super mario sunshine again, funnily. is there still no good, complete rip of that? kind of amazing if not...
There isn't one.
by Lunar at 5:52 PM EST on November 12, 2010
:<
i live in hope~
by furrybob at 11:01 PM EST on November 12, 2010
It would actually be easy to do using the method that primeblue used for Twilight Princess. You just need to completely null one of the sample banks, and certain parts of another to get rid of all the sound effects. SMS also doesn't have nearly the amount of songs that Twilight Princess does.

edited 11:37 PM EST November 12, 2010
by itsacatfish at 4:06 AM EST on November 13, 2010
The DSP HLE plugin didn't have proper stereo separation

It did in older versions of dolphin!! In around version 3972 they just seem to mix around volume and pan, so the more right the pan, the louder the volume - and they've just neglected to fix it since then! That really annoys me....
by jurassicPieter at 4:14 AM EST on November 13, 2010
Cool, someone has been doing research in bms.
Now I should finish my research into brsar. I can mute at least most sound fx and do a line-in recording :)

As for a proper super mario sunshine rip, i was trying to plan to use primeblue's method as i did with my smg1, smg2 rips (and future donkey kong jungle beat rip), but my problem is that my dvd burner is broken and my pc is too slow to emulate sms on dolphin.

by SmartOne at 1:03 PM EST on November 13, 2010
You know, it would be a lot better if someone who had a digital-out-modded Gamecube did it.
by furrybob at 3:50 PM EST on November 13, 2010
Or if Dolphin's developers worked on the DSP LLE plugin so that it emulated the DSP properly.

Edit: This is what the DSP HLE plugin sounds like:
http://www.brawlcustommusic.com/temporarycrap/smsfbb.mp3
It's fine for the most part, but it's mono.


edited 6:39 PM EST November 13, 2010
by Lunar at 5:07 AM EST on November 14, 2010
what the hell is that song? SMS? why don't i recognise it :I
by SmartOne at 11:46 AM EST on November 14, 2010
First we need accurate N64 audio emulation.
by itsacatfish at 2:29 PM EST on November 14, 2010
If you download from the archives dolphin version 3661, I think that one has stereo DSP emulation. But I think quite a few more audio issues have been fixed since then (looping samples, envelopes...), so that wouldn't really be a solution...
by arbingordon at 1:45 AM EST on November 15, 2010
what the hell is that song? SMS? why don't i recognise it :I
I think it's the song from the Pianta Village when it's on fire or something of that nature.
by furrybob at 2:14 AM EST on November 15, 2010
Actually, it's the final boss battle. Guess SMS's final boss music wasn't as memorable as the other 3D Marios' was.
by wolupgm6 at 3:02 AM EST on November 15, 2010
When heard in game, all the sfx, especially at the start of the battle, make it hard to recognise.
by Elven Spellmaker at 8:18 AM EST on November 15, 2010
It sounds horrid compared to the normal boss music. O.o
by Omochao at 12:41 AM EST on November 16, 2010
Yeah, it felt MUCH more in place in Mario Power Tennis.
by Lunar at 7:52 AM EST on November 16, 2010
someone announced they would do an SFX-free rip of SMS here:

http://forums.ffshrine.org/f72/luigis-mansion-sfx-free-82551/
by arbingordon at 11:36 AM EST on November 16, 2010
That would be jurassicPieter.
Thanks for the rip jP!
Eagerly awaiting your SMS rip as well.
by itsacatfish at 6:41 AM EST on November 20, 2010
Sorry to be boring but....this project is sort of hanging over me as unfinished business - it's so close to being finished, but I just don't have enough time to learn to program from scratch just to fix a few bugs...

This place seems the best place to ask, but is there anywhere else I might find people??
by SmartOne at 3:01 PM EST on November 20, 2010
I'm a person.
by wolupgm6 at 2:35 AM EST on November 21, 2010
And for that, we're proud.
by hcs at 3:10 AM EST on November 21, 2010
People to help with debugging? I'm sure there are plenty here.
by itsacatfish at 4:51 AM EST on November 21, 2010
Thanks SmartOne... it turns out the internet's full of them!! :o

Ok here's the source if anyone can help
sauce
by wolupgm6 at 7:48 AM EST on November 21, 2010
Try post a different link. That one will only work when logged in as you, I believe.
by itsacatfish at 11:41 AM EST on November 21, 2010
yeah sorry
sores
that should be right
by furrybob at 9:00 PM EST on November 21, 2010
Cool, now the 30 second script execution limit's not a problem, though you probably should have put a tmp folder in there, as it doesn't automatically create it.
by itsacatfish at 11:39 AM EST on December 4, 2010
does it? how do you compile it?

the only really disastrous error in the program appears in two files: e_goma_01 and field_day_link end up in an endless loop cycle.

I think the reason for this is that there is one loop embedded inside another. So it loops a section once, and then it finds another loop that goes back to before the first loop, but then it sees the first loop again and doesn't realise it's the same one from before and returns back to the beginning again. And this continues for ever.

Other than that, most files work pretty much fine.

oh this also happens with e_ganon_04



edited 3:58 PM EST December 4, 2010
by itsacatfish at 2:30 PM EST on December 5, 2010
can anyone sort this out?? or even get their heads around the source code??
by headerless at 1:45 AM EST on December 8, 2010
does it? how do you compile it?
you dont, you run it on a webserver, until someone ports the code to something else

edited 1:46 AM EST December 8, 2010
by furrybob at 9:01 PM EDT on July 9, 2011
Since Dolphin's low level audio emulation is now, for the most part, accurate, I decided to try to rip Super Mario Sunshine using BMS swapping like I did with Luigi's Mansion back in March. http://www.brawlcustommusic.com/temporarycrap/lm/

The problem with SMS is that the music samples aren't all loaded at start-up like they are with Luigi's Mansion. When playing back the music, this causes some instruments to not play in most of the tracks.

In messing around with Gamecube/Wii audio, has anybody found a way to make the game load the banks needed to play the desired BMS files?

Edit: I found out that zeroing out the first bms, MSD_SE_SEQ, cancels out all sound effects. This could be useful in doing a rip.

edited 9:10 PM EDT July 9, 2011
by holyice7 at 11:51 AM EDT on July 15, 2011
Incidentally, bob, thank you for pointing out those files. I have a few scraps of Luigi's Mansion stuff here and there, but it's only amalgamations of line-in and muting with missing and incorrect tracks. With your stuff I should actually be able to put together something close to complete.

Then my iPod will be almost perfect~
by furrybob at 7:48 PM EDT on July 29, 2011
Well, I've been messing around with these BMS files for the past few days, and here's one of the things I came up with.
http://www.brawlcustommusic.com/temporarycrap/zwwsea/index.html
by arbingordon at 5:45 PM EDT on July 30, 2011
That's awesome.
by Delon at 8:18 AM EDT on August 23, 2011
http://bms.learnpad.net does not work.
I have missed bms convert to mid.
by furrybob at 3:31 PM EDT on August 23, 2011
Someone pasted the source code, so you can use that if you want. It doesn't set the tempo properly, so you'll have to fix that though.
by furrybob at 11:27 PM EDT on September 1, 2011
I've been working on figuring out the bms files found in wind waker today, and I'm pretty much done. The only problem I've run into is that there are about 5 or so stray notes in one track of the ocean theme. I'll need to look into that tomorrow.
Here are some of the files I've converted.
http://www.mediafire.com/?upursw4473d9v

One thing I haven't figured out are the tempo changes during the song, these are described in the main header as fd xx xx for the tempo in each section of the song, but I still need to look into what determines those sections.

edited 11:29 PM EDT September 1, 2011
by Elven Spellmaker at 8:39 PM EDT on September 3, 2011
I thought tempo commands were e0?

e0 xx xx tempo \\in beats per minute
f0 (xx) xx length of tempo


What on earth does length of tempo mean?

Also what does fd actually mean if it isn't tempo?
I can't quite make it out from the code in the PHP file... It seems to be some sort of MIDI section header or something.

else if($hex=="fd") {
                    $nextchars = array_slice($filedata, $current+1, 30);
                    foreach($nextchars as $key=>$val) {
                        $nextchars[$key] = chr($val);
                    }
                    $nextchars = implode("", $nextchars);
                    if($verbose==true) { echo "<br/>Searching $nextchars"; }
                    if(preg_match("/^._POSITION_START./", $nextchars, $matches)) {
                        if($verbose==true) { echo "<br/>Found match: " . $matches[0]; echo "<br/>Jumping length " . strlen($matches[0]) . "<br/>{" . (date("U")-$start) . " sec}"; }
                        $current += 1 + strlen($matches[0]);
                    } else {
                        if($verbose==true) { echo "<br/>No match found. Terminating section<br/>{" . (date("U")-$start) . " sec}"; }
                        break;
                    }
                }
by furrybob at 12:19 PM EDT on September 4, 2011
The bms files from Wind Waker and Super Mario Sunshine are different. They're similar, but have a good amount of difference between them. Luigi's Mansion's bms files have a format that I haven't seen in any other game yet.
And when I looked at that tempo stuff the next day, It seemed glaringly obvious what they did. It has a tempo followed by the length that that tempo lasts.

Edit: I just uploaded some tracks from Super Mario Sunshine, and some updated tracks from ZWW. There are still some problems with a few of them that I still need to work out.


edited 12:40 PM EDT September 4, 2011
by Elven Spellmaker at 2:56 PM EDT on September 4, 2011
Also I have been through the BMS index code and fixed the tempo issue, it was a silly logical error in the coding that was forcing it to be set to it's correct tempo and then back to the default 100. >.>

Replace line 402 with:

        for($a=0; $a<count($parsed["tempo"]); $a++) {
            if(isset($parsed["tempo"][$a]["length"])) {
                $midi->setBpm($parsed["tempo"][$a]["tempo"]);
                //print_r($parsed["tempo"]);
                $w=$a;
                if($verbose==true) { echo "Setting initial tempo to ", $parsed["tempo"][$a]["tempo"], ".<br/>{" . (date("U")-$start) . " sec}"; }
                break;
            }
        }
        
        if(!isset($w)) {
            $midi->setBpm(100);
            if($verbose==true) { echo "No initial tempo found. Setting to 100.<br/>{" . (date("U")-$start) . " sec}"; }
        }

The next line should then read: $k=0;

Length of tempo makes sense now, I might try and implement it into the BMS index file at some point assuming the MIDI Class files allow me to put in a tempo change meta event.
by hcs at 5:21 PM EDT on September 4, 2011
Thanks guys!
by furrybob at 5:44 PM EDT on September 4, 2011
I haven't had any problem with the tempo being set back to 100. Both the newer bms style and the ones from zww/sms that I posted have worked fine for me.
by Elven Spellmaker at 4:50 PM EDT on September 5, 2011
Has anyone worked out what the length of tempo stands for?

For example, is it tempo X for Y beats/bars/bytes/seconds?
by Yuuto at 6:05 AM EDT on August 9, 2012
The b8 02 xx command in the BMS track header is the reverb value, which can be up to 7F.
Don't know if this is still helpful.
by Yuuto at 12:05 PM EDT on August 13, 2012
And the d8 62 xx xx sets the ticks per beat (quarter), in this case always 120.

The f0 command stands for a delay in general (like the MIDI delta time), not for the length of tempo. Between two tempo changes there may be more than one delay command, that's the reason why the PHP script does the tempo often wrong.

edited 1:20 PM EDT August 13, 2012
by arookas at 1:19 AM EDT on August 31, 2012
Hello, this thread has been very important to me for the past week, and have been getting really into the mood to figure out some formats. I made great progress on the PRM and BLO, but absolutely am stuck on the BMS. Here's why.

I, instead of using barcdumper, extracted the BMSs from SMS out of the sequence.arc by hand. I've now got files like "k_dolpic.com" and "k_titleback.com," but these are *.COM (presumably meaning compressed), not *.BMS. Yet, I saw and have heard the BMS-to-midi converted files like "dolpic.bms.mid" and "titleback.bms.mid." The *.BMSs from ZWW were even named *.BMS, but didn't work with the php code, either, yet there's "house.bms.mid" and "sea.bms.mid"

[EDIT:
Did furrybob release the info on the ZWW/SMS format and I missed it?
]

Thanks for reading this and hopefully replying to it, I've been getting little sleep over this and really want to contribute to this BMS format for ZWW/SMS/etc.

edited 1:26 AM EDT August 31, 2012
by koopatroop at 8:02 AM EST on February 21, 2014
A download link of the extractor for JaiArcS.arc(From Luigi's Mansion), please?

And how should I use the BMS converter?

edited 8:03 AM EST February 21, 2014

Previous Page
Go to Page 0 1

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=http://www.google.com]Link[/url]

[img=https://www.hcs64.com/images/mm1.png]
Password
Subject
Message

HCS Forum Index
Halley's Comet Software
forum source