Nintendo Entertainment System ripping tutorial

From vgmrips

This is an tutorial focused on ripping music from Nintendo Entertainment System and Family Computer Disk System games that has at least one music played on NES APU soundchip. This tutorial was done and written by Sonic of 8!

Introduction

This tutorial, as stated before, applies to the following systems / hardware:

Not every single piece of these hardware devices listed can be playable in most NES emulators or MAME.

Getting started

What you need to rip musics from NES games is:

Emulators:

  • Easy method: NEZplay++ with VGM Logging (if the game has an NSF file) or
    • Conventional method: A NES emulator with VGM Logging (e.g.: MAME) for games that doesn't have an NSF file (you also need BIOS files for several hardware listed above) or
      • Advanced method: A NES emulator with VGM Logging (e.g.: MAME) for games that cannot have an NSF file dumped because of some tech issues related to NSF file format (e.g.: Electrician for FDS);
  • A emulator with screenshot capture (MAME, if the game doesn't run, stick with Nestopia UE or FCEUmm. For VT03/09 games, use Nintendulator).

Despite MAME being able to emulate VRC6 and N163 sound, it's not possible to log sound data from these soundchips into a VGM file.

VGM tools:

  • vgm_cmp: For optimizing VGM files data;
  • vgm_trim: To make VGM files a proper loop if the music loops;
  • vgmlpfnd: To find loops in VGM files if the music loops.

You don't need vgm_sro for optimizing DPCM data.

Other:

  • The ROM of the game you are playing to take the screenshot. If the game has variants in another language (e.g.: Japanese), screenshots of it must be taken as well;
  • pngout: To optmize the PNG taken from an emulator (optional, but very useful for screenshots of VT03/VT09 games).

Ripping music with NEZplay++

To rip musics from NSF files that you got from the Internet on NEZplay++, all that you can do is drag & drop the NSF file in the program.

  • If the music loops, leave the music logging for about 10 minutes. You can change music in the NSF file by pressing left or right in your keyboard;
  • If the music doesn't change after you pressed the right key, then, the NSF file has only one music on it. You can stop it by pressing down in your keyboard;
  • After all the music was logged, you can close the program as usual.

This method works for NSF files that has NES APU, VRC7, FME-7 and FDS data.

Now, let's do the following steps:

  1. Get the command-line VGM tools listed on Getting Started.
  2. Find the loops of VGM file(s) (if any) with vgmlpfnd;
  3. Do the loops on VGM file(s) (if any) with vgm_trim;
  4. Drag & drop the VGM file(s) in vgm_cmp to optimize their data;
  5. Tag your VGM file(s) with VGMToolBox or VGMTool, whatever you think it's more easier to do;
  6. Take the screenshot of the game with MAME. The screenshot must be in 256x240 for common NES / FDS games.
    1. (optional) Drag & drop the screenshot(s) in pngout to reduce the screenshots' data for a bit.

For packaging, playlist, text file and uploading stuff, you can follow the traditional steps for every VGM pack tutorial as usual.

Ripping music with MAME (NES/FDS games)

This is for games that don't have a NSF file available, which is not the case of well known games. Let's get additional steps for this method:

  1. Download the BIOS files' romset of your system;
  2. Get the game and his variants (if any) to dump the screenshot;
  3. Get the music with a sound test. If you know how to deal with the game's sound driver, you can use the Debugger, but this option is the "last resort" for all past methods and you must know if you can deal with it, as this requires a more advanced knowledge in hacking stuff.

After getting all the music you wanted, you still need to do following:

  1. Get the command-line VGM tools listed on Getting Started.
  2. Find the loops of VGM file(s) (if any) with vgmlpfnd;
  3. Do the loops on VGM file(s) (if any) with vgm_trim;
  4. Drag & drop the VGM file(s) in vgm_cmp to optimize their data;
  5. Tag your VGM file(s) with VGMToolBox or VGMTool, whatever you think it's more easier to do;
  6. Take the screenshot of the game with MAME. The screenshot must be in 256x240 for common NES / FDS games.
    1. (optional) Drag & drop the screenshot(s) in pngout to reduce the screenshots' data for a bit.
  7. Get the tags from a gameplay, OST or sound test. YouTube is your friend for the first and second options, I guess.

For packaging, playlist, text file and uploading stuff, you can follow the traditional steps for every VGM pack tutorial as usual.

Ripping music with MAME (NES-based Plug & Play systems)

Not every NES-based Plug & Play system is actually emulated on MAME. Some can actually work, some have emulation faults, some doesn't have audio emulation, some won't boot at all. But the process will be the same as ripping music from NES / FDS games in MAME as well.

For packaging, playlist, text file and uploading stuff, you can follow the traditional steps for every VGM pack tutorial as usual.

Ripping music with MAME (VT03/VT09 games)

The emulation status of these games in MAME are way more preliminary than the simple Plug & Play systems, because they have extra hardware added on it to make these systems on par with the specs of SNES / GBA. We recommend you to find a NSF of the game instead and take the screenshot in Nintendulator.

For packaging, playlist, text file and uploading stuff, you can follow the traditional steps for every VGM pack tutorial as usual.

FAQ

  • Where I can get NSF files?
    • You can get them from some emulated music collection websites. Some people at nesdev does NSF ripping of recent dumped games (many of them, unlicensed games from Asia). But keep in mind that not every NES / FDS game can have it's music data in NSF file format.
  • If I log music data from Akumajou Densetsu / Mappy Kids, they will be logged into VGM and will be reserved for the future?
    • No.
  • What are these Plug & Play NES systems that I never heard before?
    • These systems, in most of their clone forms, are NES clones without a cartridge slot and feature several built-in games on it. None of these received actual license from Nintendo (save for NES Classic Edition, which is a totally different concept of NES system). One of earliest examples of Plug & Play NES system is Gamepad by Bandai, released in 1997. With the 2000s' Plug & Play craze started by JAKKS Pacific in USA and other Western countries, some companies released Plug & Play systems as NOACs (Nintendo-on-a-chip). Such example is Majesco, who released several games based on Konami IPs. Others such as SSD from Japan did their own hardware called XaviX. But as expected, most Plug & Play NES systems came from various companies in China and Taiwan, such as Hummer Technology, Waixing, dreamGEAR, AtGames, etc.
  • Where I can get unlicensed (bootleg) NES games for screenshot purposes?
    • This can be solved by going to Pirated Games Central, a forum about bootleg games for 8~32 bit systems. Maybe they have more info on it.

Conclusion

These methods are done by Sonic of 8! and is used on every VGM pack that he does.