How to Play Music from N64 Games Losslessly

Like a number of people out there today, I like to stick with what today’s world calls “classic” video games. Way back when 3D first became the rule and not the exception. What if you wanted to just listen to the music played on games way back then? We’ll show you how to get the music to play again.

Note: This is an article I wrote that was published elsewhere first. It has been republished here for archival purposes

Let’s say you wanted to hear some music that was from an N64 game. What would be the first thing you think of doing? If you think of going to YouTube to hear the music, then you won’t be hearing the original quality of the music. In addition, there’s no guarantee that someone somewhere along the line uploaded the music in the first place. In fact, there’s a good chance that the people uploading that music are obtaining the music via this method anyway.

The USF File Format

The way we are going to go about retrieving the music is via other people’s ROM hacking. ROM’s, in this case, are essentially the data found on the video game cartridges. It is generally accepted that every commercially available video game available on the N64 have been “dumped” in to digital ROM format.

From there, developers created emulators to play the games directly on the computer to varying degrees of success. A portion of those developers try to emulate the audio you hear in these ROMs. This critical component of the emulation process allows hackers to open up the ROMs and retrieve just the audio found within the ROM. In essence, they break their copy of the ROM so that just the audio is playing.

From here, the audio is dumped into a MiniUSF format. The MinuUSF format, or sometimes referred to as USF files, are used for audio playback.

Playing USF Files

What we are using is Windows 7. While no guarantee, this should work for most versions of Windows prior to Windows 7.

Step 1: Download and Install FooBar2000

What we first need is FooBar2000. This is simply an audio player (and, as a number of people can agree, a very good player at that). This can be downloaded at the FooBar2000 official website. Simply download and install the player. Obviously, if you already have the player, you can skip this step.

Step 2: Locate The Install Folder of FooBar2000

The default installation should put this program in the program files directory. If you installed this in a different directory, you’ll need to locate the directory where you installed the program. If default settings were used to install FooBar2000: Simply open up My Computer, go into the “C” hard drive, then “Program Files (x86)”, then go in to the “FooBar2000” directory. You should have a window that looks something like this:

About half of the installation process is done at this point!

Step 3: Obtaining the Foobar2000 64th Note

At this point, we need a critical DLL file that will allow FooBar2000 to play the MiniUSF format. For that file, we need to go to the USF Central web page. If you scroll to the bottom of the site, there should be a link called “foo_input_usf”. If you click on the link, you should be directed to the Josh W. blog post. Download Version 2.1. Windows supports the .zip format and the file can also be opened up in WinRAR. If you’re like me, opening up the file in WinRAR should reveal something like this:

WinZip should reveal something similar. A simple DLL file.

Step 4: Installing the DLL File

At this stage, you should have two windows open: the FooBar2000 directory and the .zip file window. What you now need to do is to click and drag the “foo_input_usf.dll” file from the .zip file window to the “components” directory located inside the FooBar2000 directory window (you should let go of the mouse button when you have the file over top of the highlighted folder) If you installed the DLL file correctly, you should find the “foo_input_usf.dll” file inside the components directory at this point.

You can now close the FooBar2000 directory and the .7z window that contained the .DLL file. These shouldn’t be necessary for the rest of this.

Step 5: Getting the USF Files

Now that we have installed FooBar2000 and the USF DLL file needed to play the USF files, now we need to find the music. This can be found via USF Central website. Currently, the main directory for USF files is the HCS64 directory. The games are in alphabetical order, so locating the game you want should be easy.

We should also note that not every game’s music is available in this format, so it is possible to not find the game you are looking for. For games not available in USF format, there is another way to obtain the music known as audio logging (we will explain this in a future tutorial) Still, there is a large library of music available. So, for the purposes of testing, let’s select “Blast Corps” as the game we want to hear the music from. Click on the file size (“0.4MB”). It doesn’t matter if you merely open the file or save it – just as long as you are able to view the files within the .7z file. (if Windows is unable to view .7z files, it is recommended you download and install WinRAR to view the files.

If you opened up the .7z in WinRAR, you should have a window that looks something like this:

Step 6: Extracting The Files for Playback

At this point, I recommend creating a folder somewhere on your hard drive to place all of these files. You cannot simply play back the music directly from the .7z file as it requires more than one file to be uncompressed at a time. After you have created a file folder somewhere on your computer where you’ll be able to find these files, name it whatever you want it to be named. Open up the new folder. You now need to click and drag the folder located in the “Blast Corps” .7z file into your new directory. Now, open up the “Blast Corps” folder in your new directory now that the files have been moved from the .7z to your new folder.

You should have extracted the files at this stage.

Step 7: Associating MiniUSF files with FooBar2000

While not entirely necessary, it is recommended for ease of use in future playback (you only need to to this one time because after this, all you have to do is double click on the miniusf file to play it). In the directory that you have put all of the music files in, right click on any of the .miniusf files and select “properties”. In the window, there should be a line that says “Open with”. Right next to that line should be a button that says “Change…” Click on that button.

In the subsequent window that opens up, there should be a line that says “Other Programs” with a thin line going across the window which ends with a small arrow pointing up. Click on that arrow and you should see the arrow point down, revealing a large list of programs. Scroll through the list until you see “FooBar2000”.

If you don’t see FooBar2000, click on the “Browse…” button on the bottom portion of the window. (again, this assumes you installed it to the default directory) Click on “Desktop” (left hand side of the window toward the top of the list. Double click on “Computer”, double click on the “C:” drive, double click on “Program Files (x86)”, double click on the “foobar 2000” directory, click on “Foobar 2000.exe” and click on “Open”. This should add FooBar 2000 to the list of programs you can open a file with. Select FooBar 2000 in the programs list and click on “OK”. Now, in the remaining window, click “Apply”. This will associate all files that end in “.miniusf” with FooBar 2000.

In the end, the directory with all of the miniusf files should look something like this:

Of particular interest is making sure the icons show that FooBar 2000 is associated with the program. Double click on the first file. It should open up the first file in FooBar 2000. If you were successful, then you should simply be hearing the theme song.

If you have a question, you can view our complimentary FAQ.

Update July 15, 2011: If there’s a video game not available in MiniUSF format, you can rip the audio via audio logging. Please see our audio logging guide for more information.

Drew Wilson on Twitter: @icecube85 and Google+.

1 Trackback or Pingback

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: