Site hosted by Angelfire.com: Build your free website today!

Converting .SPC format songs to .MP3

*Download the Terranigma Soundtrack Here*


April 2007

If you've ever wondered if there's a way to hear your favourite songs from your beloved Super Nintendo games just as they originally sound (and not as an imitation MIDI version such as the one playable back on the main page of this site), then this article is for you.

What is an .SPC format song?

An .SPC format song is specific to Super Nintendo Music. Of course, we are referring to the method of extracting the music from the chosen game ROM itself (Using an emulator such as ZSNES) which saves it to a file.

Think of an .SPC file like a Midi file; It stores musical data that instructs the sound synthesizer what tunes to play, and with what instruments. The difference is that it's in a format that only a Super Nintendo (or an emulator such as ZSNES) can interpret and play as music.

But that said, you can still ultimately get that exact same music playing in your Ipod, or wherever else you want to play it. And that's what this guide is here to show you.

.SPC Tracklist of the game 'Terranigma'.
Above: .SPC files as they appear in Windows 98. Apparently SPC is also some form of certificate file, so you should open them from within Winamp, or use 'Open With' if you're in Explorer. All SPC dumps seem to be 65kb no matter how long or short the song is.


How do I obtain .SPC songs?

There are two ways. Google them, or extracting the songs from the game yourself.

I suggest the first one, because if you can find the entire soundtrack on the net somewhere, it means that someone has already done all the work of capturing and maybe even correctly titleing the songs for you.

But if the songlist doesn't seem to be complete or if you are otherwise unhappy with the versions you find, read on to see how to do it yourself...

Getting your chosen song from in the game to a .SPC file requires you to run the game ROM through ZSNES (Let's use ZSNES v1.42 as an example);

  • Go to the main menu of ZSNES and select MISC. / GAME KEYS and assign any unused key on the keyboard that you wish for the 'SAVE SPC' key.
  • Next, go to CONFIG / PATHS And set a desired path where you want the .SPC file to be saved (eg if you want to place your .SPCs for one game in their own folder called 'GAMESPC' in the folder path EMU\ZSNES on drive C, enter C:\EMU\ZSNES\GAMESPC into the SPCs field below Saves and Snapshots).
  • Now, to keep that stored for good, let's go back to the MISC. menu and select SAVE CFG.

    All that you have to do next, is play the game to the location / event in the game where the song you need is actually playing at that moment. Within a second or two of the song starting to play, press the SAVE SPC key to grab the song and have it put to a file.
    If you pause the game now and go and look in that folder back in Windows, there should be an .SPC there. The name of the file should probably match the name of the game's ROM file. If you save multiple .SPC's, there will be sequential numbers put on the end of each extra file you create in that same folder of that same game.

    It is highly suggestible that you rename each filename to it's appropriate title. If you can't find what seems to be it's 'official' or most commonly referred to name on the net, simply name it as you deem it relevant to it's occurence in the game. (e.g. 'Sewer dungeon song.SPC' or 'Juggling Clown theme.SPC' .

    You may even want to number the start of each filename so they are more in sequence to the game's plot, So the title song plays first so make it '1- Intro.SPC', and the ending song plays last e.g '40- TheEnd.SPC' .


  • How do I play and listen to the .SPC files?

    As mentioned at the start of this article, the .SPC format is akin to a MIDI file in that they are both instructions to the sound device telling it what notes to play and with what instruments. But it's contents were never meant to be accessed from beyond a SNES system so SPC data is useless on a PC.
    Unless you have a special program that recognizes and interprets it for you.

    The special program you need is a Winamp plugin called SNesAmp .

  • The bad news is you need Winamp version 2.91 if you want to write them to MP3s as well (which we'll get to soon), and you know you want to. In any case, we will use version 2.91 as an example, and SNESAmp 3.05 .
    I have tried it on versions 5.x and it didn't seem to allow it.

  • Once you have obtained the SNesAmp installer file, run it and install it to the relevant Winamp folder.

  • Now, load Winamp and try playing an SPC. Wow - Winamp is actually playing it just like it would play any other song file! (If all goes to plan that is.)
    And it actually sounds just like in the game!

  • At this stage, you probably could write the music to uncompressed .WAV audio, but why would you want to do that and chew up huge amounts of disk space? Let's get an MP3 writing plugin, it's called Chun-Yu's MP3 Writer plug-in v3.0 . Note: Angelfire donot allow .exe files to download off it, so please change it from .ex_ to .exe after you download it!

    Make sure you install it to the appropriate Winamp folder, especially if you have multiple versions of Winamp installed.

  • We're now just about ready to rock. If you're still in Winamp, it's best to exit and reload it to allow for the install to definitely take effect. Assuming you have all your SPCs in a folder ready to convert to MP3's, let's load that folder up into the Winamp playlist.

  • If the song filenames are correctly titled but all you are getting in the playlist is a bunch of files with ?-? Question marks, let's fix that up now so that you don't have to manually rename every single MP3 later on:

    Right-click that green square in the top-left of the main window to access the menu...

    Go to Options / Preferences in the Winamp right-click menu, and select the Plugins / Input branch. There should be a bunch of plugins on the right. Select 'Alpha-II SPC Player v3.05 (x86)' and then press the 'Configure' button.

    SNESAmp should automatically allow Winamp to load and play .SPC files once it has been installed.Experiment with these paramaters to find what best suits you.



    In the 'Configure SNESAmp' setup box, select the Title tab. You should see a Title Formatting dialogue box with some crap that looks like this: '%9[%8[%8-]%9 ]%3 - %2' . Try deleting all that and simply having %1 .

    This will merely display each file as it's actual file name. As long as each file is named and maybe numbered also, it should now be easy to identify each song and keep them in order. You will probably have to remove (not delete) the whole playlist and reload the file / directory for the change to take effect.

  • In the 'Configure SNESAmp' setup box, under the Time tab, you can also alter the duration of the song, how it loops & fades etc when you play it.

  • After you Okay out of the SNESAmp config and close the Preference box, the .SPCs should be ready to play.


  • Writing the songs to MP3's

    Writing to MP3 is pretty simple, you just have to allow the time it takes to encode a whole game soundtrack (5 to 15 minutes on a typical recent computer such as a 3.0Ghz Pentium 4).

  • Double check that the songs are appearing and arranged as you want them.

  • Go and find / create a folder to put the MP3 versions of the songs when they get written to.

  • In the Winamp right-click menu, select Options / Preferences and select the Plugins / Output branch.

  • Select the 'Chun-Yu's MP3 Writer plug-in v3.0' and select the Configure button. You will be prompted to select your output directory, so locate that and Click OK to arrive at the MP3 Coding Configuration section. Here you might want to Untick 'Joint Stereo' because otherwise having this ticked will cause a mono mix if I remember correctly. Double check the 'Output Filename Formatting' field. There should be a %#. %p in it, but perhaps if the filename itself already has a number on it you may wish to change the field to just %p To avoid having cluttered, redundant MP3 filenames.

    The author of this site does not endorse any works of J. Timberlake.

  • Click OK, close the Preferences box, and you should be ready to begin writing the MP3's. Double-check that the first file in the list is selected and playing from there by going to the very top of the list and double-clicking it. You now shouldn't be able to hear anything, but the files appear to be playing through at a rapid speed (about 10x faster).

  • While the files are being written, go and check the Folder location to check the files are being written there and that the file names are appearing correctly. If there are any problems and you want to stop and fix something and restart, just press 'stop' in Winamp, delete any MP3's that have already been generated, make your corrections and start again.

  • Test your newly written MP3's by playing them. Copy them to a CD or your Ipod and enjoy them on the bus, in your car, wherever.

    Note: Remember to change the Output plugin back to either 'waveout' or 'DirectSound' so you can hear the music again instead of writing it to disk!


  • Tweaking with the songs

    This section may be of interested to the musicians / audiophiles of you.

    While MIDI versions may not sound as authentic as the SPC format, the advantage is that if you have a notation / compositional program, you can view the musical score, listen to individual instrument tracks and change the tempo.

    Handy stuff if you actually want to learn a certain melody on your own instrument - You can listen to an individual instrument in a song on it's own and slow it right down to learn it.

    The good news is that ZSNES allows you to mute / unmute individual instruments of the current song actually playing in-game (using the F5-F12 keys), and you can assign speed up / slow down keys to alter the tempo as well.

    Even more conveniently is that SnesAmp allows you to do that within Winamp itself with the .SPCs!

    The SnesAmp 'skin' can be activated by going into Options / Preferences and selecting the SnesAmp plugin and clicking Configure.

    Select the 'Other' tab, tick the box that is labelled 'Display the control dialogue' and press Apply / OK.

    Back in Winamp, it's best to have the whole folder of songs loaded in the playlist window so that when the SnesAmp skin is activated you can still change tracks and play/pause.

    Selecting an SPC file and playing it should automatically change the main WinAmp window to the SnesAmp 'skin'. To go back to normal, Right-click somewhere in the purple logo on the side and select Disable. Unfortunately you have to go through preferences and configure if you want to activate it again.

    Note: SnesAmp may come up with a message when you deactivate it, saying it can be reactivated by going to the plugin configuration under the 'Mixing' tab. This doesn't seem to be correct, at least not in the version I have. Instead, it is under the 'Other' tab.

    If you love all that Japanesey Nintendoey 90's musical goodness then this just about the most fun you can have with your pants on.

    If the SnesAmp window doesn't seem to activate when you play a file, try exiting and reloading Winamp, and double-check that the box is ticked in the plugin's config.

    Just keep in mind that this won't work with the .MP3 versions, or with any other audio format you may convert the songs to. So don't go deleting the SPC's just yet!


    I hope this information has been of some use and interest to you. Have fun with it...

    -Raze