no$gba is the suggested one at this point in time. vba-sdl-h is still workable and gets things done but no$gba has always been good.
That is why you have breakpoints.
Watch a jump a few times to see what happens to the audio registers/channels. Hopefully there is something unique to latch onto there (maybe it uses a channel the baseline music does not), but if not then hopefully the music playing will be obvious and you can press return to the game until the next music fiddling.
You can set it to respond to the key press as well*. I presume various things will happen as a result of the key press but an audio sting is one of them.
Most code is then going to be described as functions that it does a bunch of them in succession. Ignore the ones fiddling with graphics (they will typically start and end with a branch so you can hopefully scan quickly) and other non audio stuff in favour of whatever the stuff touching the audio is (anything between 4000060h and 40000A6h, indeed you might even add a breakpoint there after it pauses for the button thing (if you do it normally then you will probably be stopping all the time for the background music, though that might still do samples at some level).
*the keys are located http://problemkaputt.de/gbatek.htm#gbakeypadinput though some games will copy that state every frame and operate from that (switches are not magically on and off and when you press they can vary from one millisecond to the next, copying and using that eliminates this issue. If you have ever had a computer mouse start to die and double click all the time when you only single clicked then much the same mechanism/failure mode). Easy enough to find where it is copied to and do the same thing again.
That is why you have breakpoints.
Watch a jump a few times to see what happens to the audio registers/channels. Hopefully there is something unique to latch onto there (maybe it uses a channel the baseline music does not), but if not then hopefully the music playing will be obvious and you can press return to the game until the next music fiddling.
You can set it to respond to the key press as well*. I presume various things will happen as a result of the key press but an audio sting is one of them.
Most code is then going to be described as functions that it does a bunch of them in succession. Ignore the ones fiddling with graphics (they will typically start and end with a branch so you can hopefully scan quickly) and other non audio stuff in favour of whatever the stuff touching the audio is (anything between 4000060h and 40000A6h, indeed you might even add a breakpoint there after it pauses for the button thing (if you do it normally then you will probably be stopping all the time for the background music, though that might still do samples at some level).
*the keys are located http://problemkaputt.de/gbatek.htm#gbakeypadinput though some games will copy that state every frame and operate from that (switches are not magically on and off and when you press they can vary from one millisecond to the next, copying and using that eliminates this issue. If you have ever had a computer mouse start to die and double click all the time when you only single clicked then much the same mechanism/failure mode). Easy enough to find where it is copied to and do the same thing again.