little-scale — extracting samples from Game Boy and GBA ROMs (2010, 2012)

author little-scale (Sebastian Tomczak)
date 2012-12-15
article two posts: the Pocket Music (GB) sample pack extracted from its ROM (2010-03-21) and the how-to that explains the method (2012-12-15)
created 2026-08-31 · updated 2026-08-31

The generic trick for getting audio out of any ROM, with the settings that work for the Game Boy Advance — and one worked result.

Key claims#

The method (2012-12-15)#

"This short tutorial shows how to easily and simply extract the audio sample data stored in GBA ROM images. A similar process can be used for many different types of ROMs."

  1. Open Audacity, File > Import > Raw Data, and point it at the ROM file.
  2. The dialog asks for encoding (bit depth and format), byte order, channels, start offset, amount to import and sample rate.
  3. For GBA ROMs, his starting point: Signed 8-bit PCM · No Endianness · Mono · 0 bytes offset · 100 % · 12000 Hz.
  4. Audacity imports the whole ROM as audio. "If the settings selected in the import process are accurate or reasonably accurate, you should be able to see an area of the ROM (in the form of the audio waveform) that looks significantly different to the rest of it … An area that looks more like actual audio waveforms than a square data waveform."
  5. Preview it; if it sounds wrong, re-import with different settings.

The insight worth keeping is step 4: you find sample data by eye, because PCM audio looks like a waveform where code and graphics look like a solid block.

The worked example (2010-03-21)#

"Pocket Music is a sequencer for Game Boy. This software, released commercially in 2002, allows the user to sequence material including pre-packaged samples (of which there are 100). I have extracted the samples directly from the ROM, and converted them to WAV files."

Practical takeaways#

  • Import the whole ROM as signed 8-bit mono PCM and scroll: the sample bank is the part that stops looking like a solid rectangle.
  • The sample rate only affects playback speed and pitch, not whether you find the data — get the offset and encoding right first, tune the rate afterwards.
  • Wrong-but-close settings still show you where the audio is; that is the point of importing at 100 % rather than guessing an offset.
  • The same procedure works on other consoles' ROMs; the encoding guess is what changes.

Relevance to the wiki#

sample-ripping covers taking samples out of other people's modules, where the format is documented. This is the other half — pulling audio out of a binary that was never meant to give it up — and it is the method behind the Pocket Music pack.

To verify#

  • No legal or etiquette discussion appears in either post; commercial ROMs are treated as material. sample-ripping carries the scene's own debates on that.
  • Whether Pocket Music's 100 samples are stored as plain PCM or compressed is not said — only that they came out.
  • The GBA settings are a starting point he offers, not a specification; nothing in the posts explains why 12000 Hz.

Pages touched#

sample-ripping · chip-samples · game-boy · lsdj · little-scale

source file wiki/summaries/s-little-scale-rom-sample-extraction.md · graph