- BMS finally figured out!!! BMS to MIDI Converter/Exporter coming soon! BMS Collection Thread~ by dj4uk6cjm at 9:24 AM EDT on July 16, 2014
- So my friend has finally figured out exactly what bms do and the other files associated with it like szs, aaf, wsys and the bnks and heres what he told me:
[QUOTE]Turns out, the BMS files are played directly from RAM in real time without any modification (i.e. interpretted) and don't have "tracks" per say, but more like subroutines, as in the file is being scanned in several independent locations at once. Each subroutine is assigned an ID number (which may or may not be unique) and has their own polyphony, note history, jump history, delay timer, etc. What I've seen most people treat as a header is not a header, but rather just another part of the music file that ends up "spawning" the other subroutines.
The AAF file is loaded into memory when nintendo.szs is loaded and decompressed at the beginning splash screens (since it needs the coin sound effect and images) and kept there for the entire game. w1stLoad_0.aw is loaded immediately after nintendo.szs, while w2ndLoad_0.aw is loaded at the title screen (along with mario.szs and others) and kept in memory for the rest of the game, as well. In other words, what you were told was right:
* BMS files tell the audio engine what notes to play with what bank and program numbers.
* WSYS files tell the audio engine where each sample is in specific AW files (since those are just raw sample data pools) and specifies information such as what note a sample represents, loop information, sample rate, etc.
* IBNK files tell the engine the articulation of an instrument, along with which samples it uses and how the samples are mapped to the notes.
So the flow chart would presumably be: BMS -> IBNK -> WSYS -> sample data -> synthesis engine -> output[QUOTE]
This is the way super mario sunshine works at least so the format is probably similar in some other games as well. I had a feeling it worked like this for some time now myself, very useful information. :D
Check out his newest video of his BMS to MIDI Exporter in action here. Still have a long ways away but I will have the honor of being the first person to beta test it :D so I'll let you guys know how that goes. :)
He's coding it in C# and it should support windows 7 and 8 (maybe) he's doing some tests on XP (all 32-bit) so you will need Net 4 or 4.5 if you want to use it whenever it is ready and if you can run this then your fine and you will need the original super mario sunshine rom, I'm not going to tell you where to get it but just that it has to be either ISO or GCM with the exact file size of 1,459,978,240 bytes. Luckily I already have it. :)
So far we have the bms for Super Mario Sunshine, Super Mario Galaxy 1 & 2, Luigi's Mansion, Twilight Princess, Donkey Kong Jungle Beat, Wind Waker, Four Swords Adventures and Double Dash but we are looking for more so I've also made this a BMS Collection Thread for you guys to post all of your bms you have collected over the years or just now :P
Although Super Mario Sunshine is a priority and comes first all these would be good to test. ;)
Thanks again you guys~
edited 2:53 AM EDT July 17, 2014
- by Kurausukun at 11:40 AM EDT on July 16, 2014
- Super Smash Bros. Melee does not use sequences, the entire game is streamed. By the way, this is awesome.
- by Yoshinkeru at 1:14 PM EDT on July 16, 2014
- So some Gamecube games DID use sequences? I hope we can get the Animal Crossing soundtrack soon...maybe even start bms.joshw.info?
- by dj4uk6cjm at 1:17 PM EDT on July 16, 2014
- Noted! Any ideas on more BMS's we could use? FYI his soundfont code is sounding awesome! :D
- by dj4uk6cjm at 1:26 PM EDT on July 16, 2014
- Wii does too, hey I was shocked to learn that skyward sword even used sequences, I always thought nintendo did pure live orchestra :( I have the samples to prove it. :P
- by soneek at 1:48 PM EDT on July 16, 2014
- Me gusta. Also, not all sequences will be BMS. Most Wii games will use RSEQ if they're sequenced.
If your friend is interested in working with 3DS sequences though, I'd be willing to pass over my research. I've mostly gotten it finished, minus matching sequences to banks, but I don't have time to finish a player, or a new sequence format right now.
- by hcs at 4:21 PM EDT on July 16, 2014
- Fantastic, looking forward to hearing further progress on this project.
- by Yuuto at 4:38 PM EDT on July 16, 2014
- Since I did intense research on TP's BMS sequences for the last two years (I have already figured out that the tracks are 'executed' simultaneously and the 'header' is just a kind of meta track, just realized I haven't updated the player on Codeplex but on MediaFire) I wonder if you managed to decipher the special commands used in dynamic sequences (there are a lot of them) and envelope data in the IBNK.
Would be awesome!
- by dj4uk6cjm at 5:44 PM EDT on July 16, 2014
- Sigh bad news, I was just informed by my bro that Skyward Sword doesn't use sequences afterall......they're all streamed with a BRSAR like New Super Mario Bros. Wii.
Well that's one down XD but there may be some more games with sequenced music, post all the bms we don't have you can find here. Thanks~
- by bxaimc at 6:47 PM EDT on July 16, 2014
- *cough Wii Fit cough*
HCS Forum Index
Go to Page 0 1 2 3 4 5 6 7 8 9
Search this thread
Show all threads
Reply to this thread:
Halley's Comet Software
Generated in 0.0051s;