24 users online: akari1129, Angel Miranda, Batata Douce, BeancityMakes, bersi, Cote de Boeuf, CritterJason, DanMario24YT, derv82, FrostyLosty, Golden Yoshi, Green Jerry, h.carrell, Heitor Porfirio, LeonardoGamerTrainz, mathie, Minish Yoshi,  NopeContest, PuffleDreemurr, RXDARK, Ryrir, StarWolf3000, TheLegendaryOrb, Tulip Time Scholarship Games - Guests: 193 - Bots: 200
Users: 64,443 (2,491 active)
Latest user: LetsAGo123

Music Insertion with AddmusicK

FundamentalCustom MusicTool-Specific

  • Pages:
  • 1
  • 2

Music Insertion with AddmusicK

Table of contents:
  1. Introduction
  2. Requirements
  3. Music Insertion
    1. First Steps
    2. Sampled Music
    3. Sample Groups
    4. Insertion with the command line
    5. Insertion with the GUI
  4. Adding the music into the levels/Overworld
  5. Frequently Asked Questions


In this tutorial I pretend to teach you how to insert custom music into your ROM, using of AddmusicK.
If you are one of these people that refuse to chnage, you might be wondering, "Well, what does it do better than Addmusic 4.05/M?". If that's the case, then I tell you:
  • 100% real hardware and emulator compatibility.
  • Graphical User interface, in case you don't like/fear using the command line.
  • Compatibility with Addmusic 4.05 and M music formats.
  • SA-1 compatibility.
  • More commands that allow for better sonding music.
  • Frees one SFX bank, by moving the jump SFX to $1DFC.
  • No header dilemma, so you can play OW music on levels and viceversa!
  • (For porters) Ability to generate .spc files without inserting the song to your ROM via the "Porter Mode" as well as a directive to add SPC tags without having to use another program.
  • (For SPC hackers) Easy to modify 65816 and SPC ASM.

And what do I need?

Well, not much, really:
  • The latest version of AddmusicK
  • A Super Mario World ROM, preferrably without code from other Addmusics.
  • Custom music of your choice.
  • If you plan to use the GUI instead of the command line, .NET Framework.
  • A bit of patience.

Well, how do I insert my music, then?

First Steps

The first step that you need to before inserting any song is, of course, downloading it. Once you have done it, open the zip and extract the .txt file (not the spc, not the brr, just the txt) on the music folder.

Not too much to say, really.

Sampled Songs
If your song uses samples, then you have to do some extra steps:
  1. Open the .txt file.
  2. Search for a line that says #path FolderName. If one doesn't exist, then you can put the samples in the samples folder. If there is one, then put the samples on samples/FolderName instead.

The #path directive. Now you can have clean folders!

Sample Groups
If your song includes an Addmusic_sample groups.txt file as well, then you'll have to perform the following steps
  1. Open the Addmusic_sample groups.txt that came with your song, and copy its contents.
  2. Open the Addmusic_sample groups.txt that comes with AddmusicK, scroll to the bottom, and in a new line copy its contents.

Sample groups allow for a different set of samples to be inserted, be original or custom.

After doing that, open the Addmusic_list.txt file and go the end of the file. Add a new line, and type a number (in hex) from 29 to FD, followed by one or two spaces, and the name of the song.

You can put songs inside a folder too.

Now, from here on, you can either open the command line (AddmusicK.exe) or the GUI (AMKGUI.exe).

Using the command line
Simply double click AddmusicK.exe, then type your ROM name.
Press Enter, and if you did everything right, then you should see a line saying "Sucess!". Not too hard, right?

You're winner! Some people think the command line is scary, but it's not.

Using the GUI
Open AMKGUI.exe. Here, you can see a lot of useful options, including the ability to add songs directly without modifying the Addmusic_list file, playing a song without inseting it, or enabling Porter mode (explained at the start).
For now, just click Run, and a window will pop. Search for your ROM file, and the tool will do the rest. It everything goes right, then you will see a window like this:

Good. I prefer the command line personally, but this one's neat too.

Also you might've noticed that AddmusicK generates a .msc file. Don't worry about it, what this file does is showing the names of the songs when on the Bypass music dialog.

Cool beans, now how do I put them in my levels/OW?

It's not really hard! Open your ROM in Lunar Magic, and go to the level where you want to add a custom song. Press the Bypass music and time limit settings dialog button (#lm{music}) and search for the song you inserted. That's where the msc file comes handy, as it'll display the custom song names. Select it, click Ok, and save.

You probably have seen this box already.

For the Overworld, the process is similar. Click the Edit submap music selection dialog button (#lm{music} once again), select your map to the left, and the song to your right. Press Ok and save.

Not too different, to be fair.

Open your emulator. It's time!
If everything went well, you will notice two things:
  1. The music on the intro level changed to the grassland song.
  2. The song you chose plays correcly on the level.

If everything worked, yay! Now you know how to insert custom music. If for some reason it didn't work, check below to see what could've gone wrong. Or make a post on this thread, and I'll try to help you.


1. Why does the intro song change to the grassland?
That's because AddmusicK changes the order of the songs, as well as allowing for the intro level to use a custom song.

2. I applied a hex edit to change the title screen/intro level, but after reapplying AddmusicK, the changes are lost! What do?
Go to the asm/SNES folder, open the Tweaks.asm file in any text editor of your choice. Once there, search for the following lines:
!Welcome = #$13
!Title = #$15

And change the numbers to the song you want to use. Welcome is the intro level, and Title is the titlescreen. Save and reapply AddmusicK.

3. How do I change the Nintendo Presents sound? The hex edit ain't doing no thing...
AddmusicK modifies the Nintendo Presents song to be a song instead of a sound effect. This means that you have to either:
  • Use a song or convert your SFX to one
  • Change the SFX mirror to allow a sound effect.
For the first option, search for this line on the tweaks.asm file:
!NintPresents = #$1E ; Note that this is a song, not a sound effect!
And change the number to the song of your choice. Save and reapply AddmusicK.
For the second choice, search for this on tweaks.asm once again:
org $0093C0
LDA.b !NintPresents
STA $1DFB|!SA1Addr2

Change the $1DFB to the SFX mirror of your choice. You can find these, along with the sound effect numbers, here. Once you did that, you can follow the steps from step 1, taking into account that !NintPresents is a sound effect number instead.

4. Im getting an error that says: ‘Echo buffer exceeded total space in ARAM’. What can I do?
This error means that there is not enough space on ARAM for adding new songs. Open the song that tells you the error. There are three possible solutions, try them one by one:
  1. Search for a line that says #default, and change it to #optimized. Reapply AddmusicK. If it didn't work, try step 2.
  2. Search for a line starting with $F1 $XX $YY $ZZ, where $XX $YY $ZZ are hexadecimal numbers. Lower $XX by one, and reapply AddmusicK. If it doesn't work, try lowering it more, until it's $01.
  3. Worst case scenario, the song is way too big for your hack. You'll have to remove global songs for it to be inserted.

5.- If I beat or die with 100 seconds or less in the timer, the music keeps sped up!
Simply add #option TempoImmunity after the first line of your level end/death song.
Just want to point out AMKGUI will not play the .txt, it needs to run the rom for the SPC then it will be able to play it provided you have a dedicated .spc player.

Edit: ignore this, it's statement is incorrect.
Hi, I'm a signature!
Hack Thread
Hack Testing Status: Available.
Layout by Koopster.
This is a great tutorial, however, one thing I noticed that it doesn't cover is custom SFX insertion. So I really want to ask, how do we insert custom SFX successfully in this version of addmusick? I'm crossing my fingers custom SFX are compatible with SA-1 hacks.
Originally posted by Knight of Time
This is a great tutorial, however, one thing I noticed that it doesn't cover is custom SFX insertion. So I really want to ask, how do we insert custom SFX successfully in this version of addmusick?

Wakana's Porting tutorial might have the info you need.

I'm crossing my fingers custom SFX are compatible with SA-1 hacks.

Of course they are lol, anything music related is really handled by SNES SPC700.
Hi, I'm a signature!
Hack Thread
Hack Testing Status: Available.
Layout by Koopster.
I'm still scrub-peasant material and I've been fiddling around with inserting sampled music. I couldn't get sampled music to insert properly until I found a thread which listed my answer.

Maybe I missed it, but I'd recommend adding that the samples folder needs to be CUT & PASTED into the samples folder (or whatever path the text file specifies) for it to insert properly. The main point here is that the song's samples needs to be removed (not copied/duplicated) from its folder and placed into the samples folder.
Looking for high quality rips from our Grand Dad SiIvaGunner for my hack. Much appreciation to anyone who links me to any (besides Athletic PAL).
It is possible to increase the number of global songs too, but I noticed it isn't explained here. I would assume it isn't entirely necessary for most users to need to know this, but maybe it could be something to consider implementing just in case?
Recently, when I try to add a a new song using AMKGUI, the program hangs after I select a ROM and hit "RUN"
Do you have a solution for this?
"What's 9 + 10?"
#tb{:?} Trying to insert music on AddmusicK but it just pops up with an error saying "Error: File "Addmusic_sample groups.txt" not found.
When I press enter to continue,it just closes.

Maybe it's just because i'm using Wine to emulate it?
SNes9x Crashes in the title screen, after I added the custom music to the overworld map.
Hello. I'm new here. I'm making my Snes hombrew and I get stuck in making the music. Snes GSS sucks so the internet lead me here. I tried Addmusick on SMW and it's good, easy to use. I wonder can Addmusick insert songs to other Roms, like homebrewn with some tweaks in the asm file?
My homebrew is Hi-rom with high speed clock ($420D=1).
Not unless you modify the codes. All what the tools know is that they modify the code at specific points (doesn't change) without caring what ROM they're editing (it's pretty much impossible to tell what's what without disassembling the code). That being said, the AMK (which is pretty much a "GUI") and the music engine itself (it's inserted to ARAM anyway and works mostly isolated from the SNES) isn't really restricted to SMW, only the SNES to SPC700 interaction needs to be recoded for homebrew.
I tried on my rom and it says like this.

It' necessary to modify only the asm files in the asm folder?
There's a file in the asm folder, named "SongSampleList.asm" which contains the address:

org $408000

db $53, $54, $41, $52 ; Needed to stop Asar from treating this like an xkas patch.
dw SGEnd-SampleGroupPtrs-$01
dw SGEnd-SampleGroupPtrs-$01^$FFFF

$408000 is a Lorom address.
My rom is hirom, so I need to change this.
But whatever I change the address, once the patch is applied,
it returns this address back to $408000.

So which file should I modify to change this?
Hello. First, sorry for my bad english, i'm brazilian and i don't speak english very well.
now ... on the last step, when i'm going to put my rom's name on addmusick, it appears that you haven't found my rom. and this happens with all the roms I've tried! how to fix?
Originally posted by Hero of time
now ... on the last step, when i'm going to put my rom's name on addmusick, it appears that you haven't found my rom.

Is your ROM in the same folder as AMK?
Are you correctly typing its name and extension?

help me

Error parsing sample groups.txt. Expected opening quote.
.mod's are kool
e: nevermind. Read my other post below.

Windowless ride, feeling alive
Are you alive or just breathing?
@ TheScratchinator I edited your post to remove the black text coloring. Some of our themes have dark backgrounds and black text can be hard to see so please be careful when and how you use text coloring.
I feel dumb now. Yeah, don't use black text coloring, as I couldn't decipher your post at first.

Anyway, how does your Addmusic_sample_groups.txt look like?
Windowless ride, feeling alive
Are you alive or just breathing?
can you put .wav files to put voice?
  • Pages:
  • 1
  • 2

FundamentalCustom MusicTool-Specific