Need help with ripping PCM data!

Discussion of programming and development for the original Game Boy and Game Boy Color.
Post Reply
SuperWill24
Posts: 31
Joined: Sat May 13, 2017 7:54 pm

Need help with ripping PCM data!

Post by SuperWill24 » Fri Dec 15, 2017 3:40 pm

This is kind of related to this topic: viewtopic.php?t=6557
So, I am working on extracting samples from ROMs for a number of consoles, especially the Game Boy and Game Boy Color. However, there are two in particular I am having trouble with.
My current method I am using involves using the following program:
https://github.com/maxim-zhao/SampleToWav/

Using this program, I can convert an entire ROM with 4-bit PCM to an unsigned 8-bit WAV at the correct frequency. Using Wavosaur, I can then manually locate each sample and split it. This process works well for most games, and I have managed to extract some of them. Additionally, the majority of games have a visible "click" between samples, making it easy to tell exactly where each sample starts and ends.
However, I am having trouble extracting samples from two games. The first is Shrek: Fairy Tale Freakdown. I can find where the samples are located, but unfortunately, there don't seem to be any "clicks" between samples, and it's confusing how exactly the samples are separated, especially considering a lot are "8-bit" sounding sounds, the sounds in-game are hard to hear for some reason, and there also seem to be a lot of unused samples as well.
From what I know, this game uses a sound engine called "MusyX", which I believe is the same format used in the Harry Potter games and The Mummy Returns. However, while I can find MusyX sample extractors for the Nintendo 64 and GameCube, I can't find anything for the Game Boy/Color or Advance. Using a hex editor, I can find what looks like a sample table before the samples. I believe that the only reliable way to extract samples from this game would be to use the sample table, which I think I have found. However, I cannot make out exactly what each pointer means.

The other is Cannon Fodder. This game uses a different PCM format, and all the game's audio is PCM. However, it's hard to tell how the samples are separated, or if any has a "click" between each sample or not. I am especially confused if the game's intro theme is just one very long sample or split into many small parts. Like the other game, I have found what seems to be a sample table, but I am confused as to how it works, or even if it's the sample table.

Could anyone help with these two games? I am especially interested in the first game. If someone could write a script to dump each sample, or something like that, then it would be appreciated. I have attached what seems to be the sample table followed by the actual sample data for both games below.
Attachments
Possible sample tables with PCM data.zip
(910.59 KiB) Downloaded 230 times

Post Reply