The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > Creative Discussions > Emulation & ROM Hacking > Tutorials
Register New Account FAQ/Rules Chat Blogs Mark Forums Read

Notices

Tutorials Looking for a guide to help you out? Then you're in the right place! We've got everything you need, ranging from Mapping to Music!
New threads in this forum are to be approved by a moderator before they are displayed. The thread revival limit does not apply here.



Reply
Thread Tools
  #1  
Unread December 5th, 2012, 04:01 AM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
So, after downloading a special program called "NITRO-SoundMaker", which is an in-house tool to develop music for the NDS, I discovered how to loop, and it was stupidly simple. Following on a hunch, I decided to ask someone to send me a MIDI, I added the needed data to it, send it back, and have him insert it. But, there was one condition: do not touch the .s file. And my hunch was correct: the file did loop. So, this tutorial is killing two birds with one stone, as the same official tools for converting MIDI files for use on the GBA use the exact same command to loop as the official NDS tools. And it's been overlooked for many years, so it's beyond me how this was totally missed. Anyways, let's get started.

You will need:
1. Your MIDI file
2. Anvil Studio
3. Official NDS/GBA conversion tools (Based on what system you want to use)
-MID2AGB and Sappy for GBA
-smfconv, and seqconv for NDS

Oh, and don't ask me where to find the Nintendo programs. I will not link to them.

Now, as I said, it's stupidly simple to loop, and I'm not kidding. These commands are built into both MID2AGB and smfconv, but they've been overlooked until today. Here's how to tap into the hidden potential:

1. Open your MIDI file in Anvil Studio, and view your MIDI in the Piano Roll Editor (View -> Piano Roll Editor)

Now, to start, go right to the end of the song, and head to the top of the window. Look for a button called "New cue" and click on it:



Now, since we're at the end of the file, we're going to add one special character to the box that shows up, simply, "]":



Now, here comes the hardest part, and it's not even that hard. In the piano roll editor, place the marker arrow at the point in the song you want the game to loop it to, then go back up to the top and add a new cue, "[":



And that's all! Now, export your MIDI file (MIDI-Format 0 File), and compile it using your choice of tools (mid2agb for GBA, or smfconv + seqconv for NDS), and insert. Don't even touch your .s file, as there is no need to, well, unless you need to adjust something. Have fun looping music!
__________________

Last edited by Team Fail; January 3rd, 2013 at 12:42 AM.
Reply With Quote
  #2  
Unread December 6th, 2012, 12:07 AM
diegoisawesome's Avatar
diegoisawesome
Working on Shining Opal, kinda
 
Join Date: Dec 2007
Location: Goldenrod City, Johto
Age: 16
Gender: Male
Nature: Quirky
...Are you kidding me? All it took to loop it was THIS? Wow, and I've been breaking my back over this for a while now! Thanks!
__________________
My Website: o15.com
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial


Reply With Quote
  This is the last staff post in this thread.   #3  
Unread December 6th, 2012, 12:22 AM
giradialkia's Avatar
giradialkia
 
Join Date: Apr 2009
Location: Ireland
Age: 19
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to giradialkia
Wait, what?

I can do that. This is brilliant, thanks very much for sharing this, however stupidly simple it seems to be. This just made things millions of times easier for me (and a lot of other people, no doubt). Great stuff :D
__________________
Currently, I'm on a Demoted Leave of Absence, which means
for a little while,I am not the Emulation moderator.
This means I won't be able to see threads you submit, and.. well, do other things that a moderator can do.
I can, however, direct you to someone who can help, so feel free to message me in that regard.

Reply With Quote
  #4  
Unread December 6th, 2012, 12:37 AM
hinkage's Avatar
hinkage
F-FOOTDIVE
 
Join Date: Aug 2010
Location: CONNECTICUT
Age: 17
Gender: Male
Nature: Sassy
The commands are built-in... And no one ever bothered to look? O_o
Reply With Quote
  #5  
Unread December 6th, 2012, 12:56 AM
Chaos Rush's Avatar
Chaos Rush
Pokémon DarkViolet restarting
 
Join Date: May 2007
Gender: Male
Nature: Adamant
Oh my god...haha

I used to do it the classic way, which was to separate every track in AnvilStudio and manually loop it with Notepad. Then I started doing it a slightly easier way, using a program I found called SFileEditor, which makes it so you don't have to separate each track, but you still have to manually choose every loop point for every track (but it automatically types it in for you, which was slightly helpful).

But now...we have this Thank you.
__________________

Pokémon DarkViolet

DS-style 64x64 Pokémon Sprite Resource
oh and you should probably check this out too

Guys, please stop VM/PMing me about ROM hacking questions. I'm not an "expert ROM hacker". I'm an artist.

Non-Pokémon hacks I support:
Sonic Classic Heroes
Sonic 3 Complete
Reply With Quote
  #6  
Unread December 6th, 2012, 01:28 AM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
Quote:
Originally Posted by diegoisawesome View Post
...Are you kidding me? All it took to loop it was THIS? Wow, and I've been breaking my back over this for a while now! Thanks!
It's definitely not easy work, I'll admit. So no problems! Anything to make hacking easier will be beneficial to many.
Quote:
Originally Posted by giradialkia View Post
Wait, what?

I can do that. This is brilliant, thanks very much for sharing this, however stupidly simple it seems to be. This just made things millions of times easier for me (and a lot of other people, no doubt). Great stuff :D
Thanks :D
Quote:
Originally Posted by hinkage View Post
The commands are built-in... And no one ever bothered to look? O_o
My thoughts exactly. I heard it was in the documentation, but I cbf to look lol. I just did a bit of research.
Quote:
Originally Posted by Chaos Rush View Post
Oh my god...haha

I used to do it the classic way, which was to separate every track in AnvilStudio and manually loop it with Notepad. Then I started doing it a slightly easier way, using a program I found called SFileEditor, which makes it so you don't have to separate each track, but you still have to manually choose every loop point for every track (but it automatically types it in for you, which was slightly helpful).

But now...we have this :) Thank you.
Oh man, that'd be hard. But yeah. Even having to manage the .s file was painful. Now, you barely have to even touch it, as all the loop commands are inserted automatically :D Isn't it wonderful?
__________________
Reply With Quote
  #7  
Unread December 6th, 2012, 03:15 AM
tonti's Avatar
tonti
That one guy who does stuff
 
Join Date: Dec 2008
Location: Under the truck
Age: 16
Gender: Male
You sir, are a real life saver. I always found looping to be an incredible hassle in the past, but now I can do it in under 2 minutes. This is so awesome! Thanks!
__________________
Also known as MrAPT1 on youtube. http://www.youtube.com/user/MrAPT1
Reply With Quote
  #8  
Unread December 6th, 2012, 03:57 AM
mewmasterify's Avatar
mewmasterify
Actual Mew
 
Join Date: Apr 2011
Location: Faraway Island
Age: 13
Gender: Male
Nature: Quiet
umm i got a Error when i used this tutorial:
__________________
Reply With Quote
  #9  
Unread December 6th, 2012, 04:06 AM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
Make sure all that's in the cue editor is either a [ or a ] at the proper position. Other than that, make sure it's using a valid filename. That's all I can think of.
__________________
Reply With Quote
  #10  
Unread December 7th, 2012, 12:40 AM
shinyabsol1's Avatar
shinyabsol1
Pokemon DarkJasper
 
Join Date: Aug 2010
Gender: Male
Nature: Careful
Awesome, this saves so much time! Thanks for sharing this!
Reply With Quote
  #11  
Unread December 7th, 2012, 03:33 AM
阴魂君's Avatar
阴魂君
_(:зゝ∠)_ so busy i am…
 
Join Date: Nov 2012
Location: China
Age: 17
Gender: Male
Nature: Brave
OMG it's more easier than other ways.
Reply With Quote
  #12  
Unread December 7th, 2012, 10:39 PM
tajaros's Avatar
tajaros
Hi I'm dawg
 
Join Date: Apr 2012
Location: Philippines
Age: 14
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to tajaros
What The-?

This made things more freaking easier thanks TF for sharing this! :3
__________________
Reply With Quote
  #13  
Unread December 11th, 2012, 01:30 PM
Final Destination's Avatar
Final Destination
pls
 
Join Date: Sep 2008
Location: >_>
Age: 14
Gender: Male
Nature: Adamant
Holy crap

If people don't use this tutorial to insert music, now that it's been made easier than ever, then I'll cry. Seriously, this is awesome!
__________________


Credits for my Avatar goes to Joltik92 on Deviantart.
Quote:
Originally Posted by darkpokeball View Post
Granted, but then every Scyther and Scizor in existence mysteriously vanishes...upon investigation, scientists discover that somehow, more breeds of pokemon are vanishing every day. All tentacools and tentacruels vanish the next day.
"Professor Oak, what do you think is happening?"
"Well, Juniper, there's only one thing that can explain this..."
"What?"
"We're in a fanfiction!" "Oh no!"





Reply With Quote
  #14  
Unread December 14th, 2012, 03:18 AM
VERGUNDAI's Avatar
VERGUNDAI
RomHacker, Unity 3D Maker
 
Join Date: Dec 2009
Location: Pokemon Universe :)
Age: 16
Gender: Male
Nature: Quiet
Quote:
Originally Posted by Final Destination View Post
Holy crap

If people don't use this tutorial to insert music, now that it's been made easier than ever, then I'll cry. Seriously, this is awesome!
What's more awesome is that imagine if you can make a program that does all of this.
__________________
Vergundai_ace_gailon
Reply With Quote
  #15  
Unread December 14th, 2012, 03:21 AM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
Quote:
Originally Posted by VERGUNDAI View Post
What's more awesome is that imagine if you can make a program that does all of this.
If you have to get a program that does something that's this easy, then my head could not hit a desk hard enough. This is about as easy it will get and requires minimal effort.
__________________
Reply With Quote
  #16  
Unread January 3rd, 2013, 12:46 AM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
Took some advice from Chaos Rush and edited in the "(MIDI-Format 0 File)" export option in the post. If you're having issues with converting, check it out once more and see if it's working for you. c:
__________________
Reply With Quote
  #17  
Unread January 11th, 2013, 10:50 PM
Dylanrockin's Avatar
Dylanrockin
Mysterious Trainer
 
Join Date: May 2011
Gender: Male
Nature: Timid
So I don't need to break up the tracks in the song at all? Or do I still have to do that?
Reply With Quote
  #18  
Unread January 13th, 2013, 04:29 PM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
Quote:
Originally Posted by Dylanrockin View Post
So I don't need to break up the tracks in the song at all? Or do I still have to do that?
Nope. You just open the MIDI as is with all the tracks. MID2AGB will automatically place the loop commands in each track for you.
__________________
Reply With Quote
  #19  
Unread February 3rd, 2013, 07:52 AM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
 
Join Date: May 2007
Location: Philippines
Age: 22
Gender: Male
Nature: Careful
Send a message via Skype™ to destinedjagold
Well, goodbye with the old, and hello to the new~ :D

Thanks for sharing this, as this will be a very big help in editing music.
__________________
Reply With Quote
  #20  
Unread March 24th, 2013, 07:20 PM
PKMN Trainer S
Unhatched Egg
 
Join Date: Feb 2013
Gender: Male
Hey, anybody knows how to make some tracks sound right? I know you can import instruments but...
__________________
Why , you ask? Cause.
Reply With Quote
  #21  
Unread 4 Weeks Ago, 01:58 PM
kaedearagaki's Avatar
kaedearagaki
Music God
 
Join Date: Apr 2013
Location: EARTH
Gender: Male
Nature: Serious
So this is how it's done? I'm having hard time looping.. well, thanks for sharing this! I'm a music hacker that's why it's a big big big thanks!
__________________
Reply With Quote
  #22  
Unread 3 Weeks Ago, 05:54 PM
galooloo's Avatar
galooloo
Bug Catcher
 
Join Date: Nov 2011
Location: Neptune
Gender: Male
Nature: Serious
Quote:
Originally Posted by Team Fail View Post
So, after downloading a special program called "NITRO-SoundMaker", which is an in-house tool to develop music for the NDS, I discovered how to loop, and it was stupidly simple. Following on a hunch, I decided to ask someone to send me a MIDI, I added the needed data to it, send it back, and have him insert it. But, there was one condition: do not touch the .s file. And my hunch was correct: the file did loop. So, this tutorial is killing two birds with one stone, as the same official tools for converting MIDI files for use on the GBA use the exact same command to loop as the official NDS tools. And it's been overlooked for many years, so it's beyond me how this was totally missed. Anyways, let's get started.

You will need:
1. Your MIDI file
2. Anvil Studio
3. Official NDS/GBA conversion tools (Based on what system you want to use)
-MID2AGB and Sappy for GBA
-smfconv, and seqconv for NDS

Oh, and don't ask me where to find the Nintendo programs. I will not link to them.

Now, as I said, it's stupidly simple to loop, and I'm not kidding. These commands are built into both MID2AGB and smfconv, but they've been overlooked until today. Here's how to tap into the hidden potential:

1. Open your MIDI file in Anvil Studio, and view your MIDI in the Piano Roll Editor (View -> Piano Roll Editor)

Now, to start, go right to the end of the song, and head to the top of the window. Look for a button called "New cue" and click on it:



Now, since we're at the end of the file, we're going to add one special character to the box that shows up, simply, "]":



Now, here comes the hardest part, and it's not even that hard. In the piano roll editor, place the marker arrow at the point in the song you want the game to loop it to, then go back up to the top and add a new cue, "[":



And that's all! Now, export your MIDI file (MIDI-Format 0 File), and compile it using your choice of tools (mid2agb for GBA, or smfconv + seqconv for NDS), and insert. Don't even touch your .s file, as there is no need to, well, unless you need to adjust something. Have fun looping music!
yo TeamFail thanks man but i wanna tell you something...

It didn't work to me, 'til i changed the song groups (in sappy) to 1: 300 2: 300

You gotta write that if you want
__________________
Working for:
Spherical Ice (Pokémon Cobalt)
Me (Pokémon BlackDeep)

Pokémon BlackDeep Version: http://www.pokecommunity.com/showthread.php?t=300756

ABRA <3 <3 <3
Reply With Quote
  #23  
Unread 3 Weeks Ago, 03:01 PM
Team Fail's Avatar
Team Fail
Walk the walk // Talk the talk
 
Join Date: May 2009
Age: 18
Gender: Male
Nature: Brave
Quote:
Originally Posted by galooloo View Post
yo TeamFail thanks man but i wanna tell you something...

It didn't work to me, 'til i changed the song groups (in sappy) to 1: 300 2: 300

You gotta write that if you want :P
That's kinda given. This is just for looping, not inserting.
__________________
Reply With Quote
Reply
Quick Reply

Sponsored Links


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are UTC. The time now is 03:12 PM.


Style by Perdition Haze, artwork by Sa-Dui.
Like our Facebook Page Follow us on TwitterMessage Board Statistics | © 2002 - 2013 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to Pokémon USA, Inc. and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company, Pokémon USA, Inc., The Pokémon Company International, or Wizards of the Coast. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2013 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User posts belong to the user.