Page 1 of 1

How to extract the sound files from the roms?

Posted: March 11th, 2019, 16:27
by FerozElMejor
Hello everyone, I'm lookng for a tool to extract all the music files of the 10 roms from Pokémon Mini.

I would love any help for doing that :D

Re: How to extract the sound files from the roms?

Posted: March 12th, 2019, 12:03
by Toolshrink
If you have any luck, is it possible for you to share the files on the site? Thanks! ;)

Re: How to extract the sound files from the roms?

Posted: March 12th, 2019, 13:16
by FerozElMejor
Toolshrink wrote:If you have any luck, is it possible for you to share the files on the site? Thanks! ;)
Of course, but it seems that no one knows how to get these files, I would love to get they, and then share all the music on youtube and here.

Re: How to extract the sound files from the roms?

Posted: March 15th, 2019, 18:24
by zoranc
FerozElMejor wrote:
Toolshrink wrote:If you have any luck, is it possible for you to share the files on the site? Thanks! ;)
Of course, but it seems that no one knows how to get these files, I would love to get they, and then share all the music on youtube and here.
Without access to the source code it would be difficult by just looking at the binary data...

One way is to run the games via emulator and record all the accesses to the sound registers and timers. That'd produce kind of sound file... You would need to modify the PokeMini for that.

Re: How to extract the sound files from the roms?

Posted: May 30th, 2019, 06:15
by YasaSheep
Honestly it probably wouldn't be terrible to reverse engineer. There's only one way to write sound (movs/lds to the appropriate registers right?? https://www.pokemon-mini.net/documentation/audio/), so search for those ops in the debugger and put breaks on them, then step back to figure out where the data's coming from and how it's finding the start and end of that data. Hopefully an array of offsets somewhere, but if not you'd just need to go to each BGM until you find the pattern.

Re: How to extract the sound files from the roms?

Posted: June 1st, 2019, 18:09
by Jhynjhiruu
I would imagine that all of Nintendo's games use the same code for audio, given that they had some kind of development library; the (small amount of) work I've done reversing Pokémon Tetris from a disassembly has led to some insight on how audio is loaded, but as for extracting it I just read the values out from an emulator into my own ROM.

Re: How to extract the sound files from the roms?

Posted: December 20th, 2019, 05:16
by Jhynjhiruu
After a significant amount of research and reverse engineering: yes, it is in fact possible to extract audio data from ROMs. Minlib (Nintendo's SDK library for the Mini) contains audio playing code using a standard format consisting of note data and some control characters; I've been successful in replacing this data with my own, and I hope to write a converter soon.

Re: How to extract the sound files from the roms?

Posted: December 20th, 2019, 05:20
by RazorLeafAttack
Wow awesome work!

Re: How to extract the sound files from the roms?

Posted: December 20th, 2019, 12:31
by FerozElMejor
Jhynjhiruu wrote: December 20th, 2019, 05:16 After a significant amount of research and reverse engineering: yes, it is in fact possible to extract audio data from ROMs. Minlib (Nintendo's SDK library for the Mini) contains audio playing code using a standard format consisting of note data and some control characters; I've been successful in replacing this data with my own, and I hope to write a converter soon.
Oooh, that's really nice :D

Re: How to extract the sound files from the roms?

Posted: December 21st, 2019, 21:51
by Jhynjhiruu
OK, I've written a (very slow, incomplete) converter, and successfully converted raw Minlib note data into audio info which can be loaded in Audacity and exported. I want to work on the code a bit more before I release it, but I'll post some previews on the Discord server if you want to join that.