Audio Swapping Question.

Discussion in 'NDS - ROM Hacking and Translations' started by NazoXIII, Dec 14, 2008.

Dec 14, 2008

Audio Swapping Question. by NazoXIII at 6:24 AM (7,016 Views / 0 Likes) 13 replies

  1. NazoXIII
    OP

    Newcomer NazoXIII Advanced Member

    Joined:
    Aug 10, 2008
    Messages:
    85
    Country:
    United States
    Im trying to Swap just the Intro for the Game the song is called Be somewhere (opening in the Jap version of the game)
    But i want to change just that not the english voices Ect Long story Short i want to keep the dub but Undub the opening

    Edit: I changed some files around using Dsbuff and I got the opening on the Eng version bbut as i feared Japanese Voices along with it (Lan=Netto=Pisses me off)
     
  2. Rock Raiyu

    Member Rock Raiyu Clock Up

    Joined:
    Jul 14, 2007
    Messages:
    5,066
    Location:
    Walking the path of heaven
    Country:
    United States
    You can't do that with this particular game because the sound files are all made into one file. You can possibly take apart the sound file but then you'd probably have to recode the game or something. I may be wrong, but you either make the game with opening and voices in Japanese or you keep the voices and opening now.
     
  3. NazoXIII
    OP

    Newcomer NazoXIII Advanced Member

    Joined:
    Aug 10, 2008
    Messages:
    85
    Country:
    United States
    Ok ill guess ill make due with what i got, Tnx for the info btw
     
  4. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,747
    Country:
    United Kingdom
    The simple undub is not hard (hell I did it years ago: http://gbatemp.net/old/index.php?showtopic=29842 ) but remaking a sound file is a tricky thing. Luckily the intro is a song as I recall (I know the Japanese version is) which means you will not have to mess around with the instruments.

    There are some SDAT repackers (kiwi.DS released a few over at the tahaxan forums) but by hand would probably be easier in this case.
    If the US/Eu one is smaller then just overwrite what is there and change the sizes SDAT specs here:
    http://kiwi.ds.googlepages.com/sdat.html
    Note there will be a size as well as a location, you need to fix both.

    If the file is bigger then you will have the dilemma faced by every hacker that has dealt with pointers.
    Trim the intro- most files are OK with being sliced for no reason (I used to do it when ripping games for old NOR era carts). Naturally you will lose the last few seconds.
    Repoint the lot (will not be that bad as you are just shifting all files after the point you insert)
    Add the file to the end and repoint to that. This is common in text hacking on the GBA (the whole rom is in the "memory" so you can read anywhere you like) but the idea is you add it to the end and then when it tries to read the song it goes to the end of the file instead (similar to how the tetris and pokemon sound hacks you may have seen work).

    For the last two remember to also change the file length at the start of the SDAT file as well as the pointer tables.
     
  5. NaokiKitsuhine

    Member NaokiKitsuhine GBAtemp Regular

    Joined:
    Dec 14, 2008
    Messages:
    121
    Country:
    Brazil
    Hey guys, someone have any code or patch that change the battle music from the game to the others that only play if you have on slot 2 one of the GBA games?
    I'd like to hear the battl etheme from MMBN1 or 4 playing in the battle '-'

    (Sorry, my english is not that good because i'm Brazilian [​IMG]) )
     
  6. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,747
    Country:
    United Kingdom
    I have not got a code but it would be a fairly simple hack (I assume the game does not do anything as silly as read it from the GBA pack). Find the name of the sound you want and then simply repoint to the sound you want to play, the following thread has info:
    http://gbatemp.net/index.php?showtopic=100253&hl=
    I can grab a sort of blow by blow account if you need one too.
     
  7. NaokiKitsuhine

    Member NaokiKitsuhine GBAtemp Regular

    Joined:
    Dec 14, 2008
    Messages:
    121
    Country:
    Brazil
    I've tried to hacking but when I opened the rom... I can't understand nothing, i don't know nothing about hacks XD

    Can you do it from me? '-'
    I just wanted to swap the battle music to the EXE1 theme.
     
  8. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,747
    Country:
    United Kingdom
    Alright the I will explain the theory as I do not know the files you want to use. The methods used will also be similar to those for the other request in this thread (aside from the potential size change).

    You need not pull apart the entire rom for this, quite in fact I used NDSTS:
    http://www.no-intro.org/tools.htm

    The location of the sound file is the "data\rom\ds" directory (note for ndstool/dslazy/dsbuff users the game has a directory called data so for you it will be the "data\data\rom\ds" directory.
    You could do it in situ and either account for the location of set your editor to the start of the file (FBEC00 hex) but extracting is easy enough.

    Initial shot of editor
    [​IMG]

    This means little however so we need to find the files you want. Crystaltile2 time:
    [​IMG]

    Now for instance if I wanted it to play "001-BGM_TITLE.SSEQ" instead of "002-BGM_NEBULA.SSEQ" I could find the location of the 002-BGM_NEBULA.SSEQ (in this case 71e0 hex in the sdat file or FC4300 hex in the rom).
    Back to the editor. I need the string dealing with "002-BGM_NEBULA.SSEQ"
    The files are the second and third entry but in reality you would find them by matching name to location (the ASCII name list is usually present and if you search for "FAT" in ASCII you will get the location list.

    In this case using the info from crystaltile 2 you can see what needs to be changed
    The yellow highlight is the search for "FAT", the red letters are the location info and the black and yellow text is the file length.
    [​IMG]

    You want the "001-BGM_TITLE.SSEQ" instead of "002-BGM_NEBULA.SSEQ" so the third entry (second highlighted) will need to match the second entry (first highlighted) or:
    [​IMG]

    Save the file and no change in length should have happened so you can just import it again with NDSTS.
    This is all that was done for the tetris sound hacks, the castlevania POR stability hack and the pokemon sound hacks.
     
  9. Evilmaster1985

    Member Evilmaster1985 GBAtemp Fan

    Joined:
    Nov 23, 2008
    Messages:
    456
    Location:
    Middle of nowhere
    Country:
    United States
    Very neat and clear explained!
    Adding the Zelda theme all over Tetris as we speak
    Dint think it was this easy [​IMG]

    Greetz, Vistabuser
     
  10. NaokiKitsuhine

    Member NaokiKitsuhine GBAtemp Regular

    Joined:
    Dec 14, 2008
    Messages:
    121
    Country:
    Brazil
    Wow, Great Explanation!
    Thanks FAST6191
    helped me a lot, now the game has a much better battle theme remixed =D

    -------------edit

    I've tried to download the crystaltile2 but all the links are dead =/

    --------------edit 2
    i have swaped the music but some tracks are not being played o.o
     
  11. Evilmaster1985

    Member Evilmaster1985 GBAtemp Fan

    Joined:
    Nov 23, 2008
    Messages:
    456
    Location:
    Middle of nowhere
    Country:
    United States
    Well without CrystalTile2 its kinda hard to get track of the adress.
    Download here worked for me: http://www.4shared.com/file/42134901/3967a...ystaltile2.html

    After finding the adress in the: sdatfile info tool in CrystalTile2
    (using the F2 key in the app after loading a sdat file)
    You search in hex value in a hex editor.

    For exapmple with Fast his example:
    001-BGM_TITLE.SSEQ
     
  12. FAST6191

    Reporter FAST6191 Techromancer

    pip
    Joined:
    Nov 21, 2005
    Messages:
    21,747
    Country:
    United Kingdom
    My apologies, I was only using crystaltile2 as I was being lazy. Normally I would line up the list of file names (they are in ASCII) with the contents of the FAT table.

    As Vistabuser mentioned make sure you change the strings properly; it is mighty sensitive about that.

    Also note that the lengths can be longer (hence the blank 00s) so do not always expect 16 bits.
     
  13. NaokiKitsuhine

    Member NaokiKitsuhine GBAtemp Regular

    Joined:
    Dec 14, 2008
    Messages:
    121
    Country:
    Brazil
    Thanx Guy's, i'll try later then post the results, now I understand much more what i need to do...

    "0057 0000 D01A

    So: Song adress - 4 empty digits - Song Lenght."

    This info helped a lot
     
  14. Reshiram_Addict

    Newcomer Reshiram_Addict Member

    Joined:
    Jun 8, 2011
    Messages:
    39
    Country:
    United States
    actually I got lost at the Hex Workshop part!!!!!!!!! that isn't clearly explained at all!!!!!!!!!!!!! I still don't know what to do there!!!!!!!!!

    also it is asking me to log in to download CrystalTile2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     

Share This Page