Any Tips for MSU1 Hacking?
Page 1 of 1
Any Tips for MSU1 Hacking?
Hey all. Anyone got any good sites or tutorials for hacking in MSU1 support for SNES games?
I'm not that good at debugging and/or assembly. I understand the basics of breakpoints and more technical stuff, I've dabbled in C a little so I'm not entirely lost in the coding aspect of things. I'd like to try to get at least one track to play on a game just to get a feel for it. I understand that it can be, and is, a time consuming process.
I just can't seem to get any good sources of information and how things should be set up. I would appreciate any help if possible.
If anything, I have ripped the OST from FFIV PSP version with proper loop points, so I can help there if anyone wants to do a FFIV/II project.
I'm not that good at debugging and/or assembly. I understand the basics of breakpoints and more technical stuff, I've dabbled in C a little so I'm not entirely lost in the coding aspect of things. I'd like to try to get at least one track to play on a game just to get a feel for it. I understand that it can be, and is, a time consuming process.
I just can't seem to get any good sources of information and how things should be set up. I would appreciate any help if possible.
If anything, I have ripped the OST from FFIV PSP version with proper loop points, so I can help there if anyone wants to do a FFIV/II project.
ifrit05- Newcomer
- Since : 2015-09-23
Re: Any Tips for MSU1 Hacking?
First off, you need to know some basic ASM and learn at some level how SNES hardware works:
http://www.smwcentral.net/?p=viewthread&t=5977
http://ersan.io/old.php?p=asm
After that, you are likely going to want some examples of MSU-1 code to see how you can play with it.
Conn made a great job by figuring out how the N-SPC music engine works at the CPU side(http://www.smwcentral.net/?p=viewthread&t=38116), so you may start with his source-codes to learn the MSU-1 basics: (look into the ASM files)
http://bszelda.zeldalegends.net/stuff/Con/f-zero_msu.zip
http://bszelda.zeldalegends.net/stuff/Con/smw_msu1.zip
https://github.com/qwertymodo/MSU1-Zelda
But the "logic" on these codes don't work for every game. Now it's getting tough, to hack a game to make it use MSU-1, you need to disassemble the part of the game which handles the music routine, or at least figure out how it works so you can "intercept" the song value (sent to one of these hardware registers: $2140 | $2141 | $2142 | $2143) and make it to be stored in a MSU-1 register:
https://web.archive.org/web/20140921005204/http://byuu.org/snes/msu1/specification/
Sometimes you can't rely entirely on the song value provided by the game because a lot of them use one thing called "music bank", for a quick understanding, this means that one value may play different songs in certain occasions.
After you are a little more experienced with ASM, you may like to take a look in DarkShock's work:
https://github.com/mlarouche?tab=repositories
He was able to figure out very complexes music engines and banks, this is indeed very advanced stuff. =)
http://www.smwcentral.net/?p=viewthread&t=5977
http://ersan.io/old.php?p=asm
After that, you are likely going to want some examples of MSU-1 code to see how you can play with it.
Conn made a great job by figuring out how the N-SPC music engine works at the CPU side(http://www.smwcentral.net/?p=viewthread&t=38116), so you may start with his source-codes to learn the MSU-1 basics: (look into the ASM files)
http://bszelda.zeldalegends.net/stuff/Con/f-zero_msu.zip
http://bszelda.zeldalegends.net/stuff/Con/smw_msu1.zip
https://github.com/qwertymodo/MSU1-Zelda
But the "logic" on these codes don't work for every game. Now it's getting tough, to hack a game to make it use MSU-1, you need to disassemble the part of the game which handles the music routine, or at least figure out how it works so you can "intercept" the song value (sent to one of these hardware registers: $2140 | $2141 | $2142 | $2143) and make it to be stored in a MSU-1 register:
https://web.archive.org/web/20140921005204/http://byuu.org/snes/msu1/specification/
Sometimes you can't rely entirely on the song value provided by the game because a lot of them use one thing called "music bank", for a quick understanding, this means that one value may play different songs in certain occasions.
After you are a little more experienced with ASM, you may like to take a look in DarkShock's work:
https://github.com/mlarouche?tab=repositories
He was able to figure out very complexes music engines and banks, this is indeed very advanced stuff. =)
Last edited by Colines on Sun 28 Jan 2018 - 12:15; edited 1 time in total
Colines- Since : 2015-05-24
Re: Any Tips for MSU1 Hacking?
Hey Conn i see ur back..its like a month since the last time we talk here..can u give me a little to hacking mulitple tracks without using PHA and PLA to hack all songs on Rival Turf..i manage to play 2 tracks..only and they repeat on every stage..maybe i havent found right address to hack. i tried an INC A but the game plays msu-1 00e434 but the screen stays black...and. the address that work was. a sta $2140. 00e478
kurrono- Since : 2015-03-22
Page 1 of 1
Permissions in this forum:
You cannot reply to topics in this forum