Difference between revisions of "VGM"
m |
|||
Line 16: | Line 16: | ||
}} | }} | ||
− | The '''''Videogame Music''''' format stores the audio data that is sent to various audio chips used in videogame consoles, arcade consoles, pinball machines, and home computers. ''VGM'' takes a different approach than most formats. Rather than house the original sound files (like [[MIDI]] / [[MOD]]) or the game's extracted audio code (like [[NSF]] / [[SID]]), ''VGM'' logs all of the data being sent to an audio chip. To playback a song, this data is sent to an emulated chip, which, if emulated properly, yields identical sound to the game. To use a piano metaphor, ''VGM'' doesn't copy the sheet music, and it doesn't record the played music with a microphone, rather it records the motions made by the hands of the pianist. This approach is the same as [[DRO]] and [[IMF]], but for a much wider range of audio chips, ''VGM'' could be seen as a superset of those formats. | + | The '''''Videogame Music''''' format stores the audio data that is sent to various audio chips used in videogame consoles, arcade consoles, pinball machines, and home computers. ''VGM'' takes a different approach than most formats. Rather than house the original sound files (like [[MIDI]] / [[MOD]]) or the game's extracted audio code (like [[NSF]] / [[SID]]), ''VGM'' logs all of the data being sent to an audio chip, identical to the SNES's [[SPC]] format. To playback a song, this data is sent to an emulated chip, which, if emulated properly, yields identical sound to the game. To use a piano metaphor, ''VGM'' doesn't copy the sheet music, and it doesn't record the played music with a microphone, rather it records the motions made by the hands of the pianist. This approach is the same as [[DRO]] and [[IMF]], but for a much wider range of audio chips, ''VGM'' could be seen as a superset of those formats. |
While this method bypasses having to emulate the countless custom methods that have developed over the years for storing and playing videogame music, it is not without its share of problems. Only the processed data is recorded, not the original files and code. This means that it is not possible to easily edit the music once it's recorded. It also means that each song must be timed by hand since the audio chip never sees the actual start and stop of looping music. | While this method bypasses having to emulate the countless custom methods that have developed over the years for storing and playing videogame music, it is not without its share of problems. Only the processed data is recorded, not the original files and code. This means that it is not possible to easily edit the music once it's recorded. It also means that each song must be timed by hand since the audio chip never sees the actual start and stop of looping music. | ||
+ | |||
+ | Also, only Windows has full support of the [[VGM]] format, as other systems such as [[Macintosh]] and [[Linux]] offer very little support for the format. | ||
+ | |||
+ | In addition, there are some chips such as the [[Namco WSG]] and [[DCS]] which are not intended to be implemented into the format. | ||
Here's a breakdown on which chips are used by which systems: | Here's a breakdown on which chips are used by which systems: |
Revision as of 20:40, 20 November 2015
Videogame Music | |||||
Developer: | |||||
Header: | Custom | ||||
Content: | Log | ||||
Instruments: | Combined | ||||
Target Output
| |||||
Released: | 2001 | ||||
First Game: | N/A | ||||
Extensions |
|
The Videogame Music format stores the audio data that is sent to various audio chips used in videogame consoles, arcade consoles, pinball machines, and home computers. VGM takes a different approach than most formats. Rather than house the original sound files (like MIDI / MOD) or the game's extracted audio code (like NSF / SID), VGM logs all of the data being sent to an audio chip, identical to the SNES's SPC format. To playback a song, this data is sent to an emulated chip, which, if emulated properly, yields identical sound to the game. To use a piano metaphor, VGM doesn't copy the sheet music, and it doesn't record the played music with a microphone, rather it records the motions made by the hands of the pianist. This approach is the same as DRO and IMF, but for a much wider range of audio chips, VGM could be seen as a superset of those formats.
While this method bypasses having to emulate the countless custom methods that have developed over the years for storing and playing videogame music, it is not without its share of problems. Only the processed data is recorded, not the original files and code. This means that it is not possible to easily edit the music once it's recorded. It also means that each song must be timed by hand since the audio chip never sees the actual start and stop of looping music.
Also, only Windows has full support of the VGM format, as other systems such as Macintosh and Linux offer very little support for the format.
In addition, there are some chips such as the Namco WSG and DCS which are not intended to be implemented into the format.
Here's a breakdown on which chips are used by which systems:
Chip |
Manufacturer |
Devices |
051649 | Konami | MSX with SCC1, and some Konami arcade games. |
053260 | Konami | Some Konami arcade games. |
054539 | Konami | Some Konami arcade games. |
AY-3-8910 | General Instrument | Hundreds of arcade games, Mockingboards Sound I and Sound II, MSX, Oric 1, Colour Genie, Elektor TV Games Computer (Expanded Version) |
AY-3-8912 | General Instrument | Vectrex, Amstrad CPC, ZX Spectrum 128, some arcade games. |
AY-3-8913 | General Instrument | Mockingboards A, C, D, M, and v1, some arcade games. |
AY-3-8914 | General Instrument | Intellivision, Intellivision II |
C012294 (POKEY) | Atari | Atari 8-bit home computers. |
C140 | Namco | Several Namco arcade games. |
DMG-CPU B | Nintendo | Game Boy |
HuC6280 | Hudson | Turbo Grafx 16, a some arcade games. |
MSM6258 | OKI | X68000 |
MSM6295 | OKI | Some arcade games. |
PWM | Sega | Sega 32x |
Q-Sound | Capcom | Capcom CPS-1 and CPS-2 arcade platforms. |
RF5C164 | Ricoh | Sega Mega CD |
RF5C68 | Ricoh | System 18 and System 32 arcade platforms. |
RP2A03 (APU) | Ricoh | Nintendo Entertainment System. |
Sega PCM | Sega | Various arcade games. |
SN76489 / SN76496 | Texas Instruments | BBC Micro, Game Gear (with stereo extensions), Mark III, SC-3000, Master System, SG-1000, and Genesis. |
T6W28 | Texas Instruments | NeoGeo Pocket (variant of the SN76489). |
UPD7759 | NEC | Various arcade games. |
Y8950 | Yamaha | MSX with MSX-Audio, a few arcade games. |
YM2149 (SSG) | Yamaha | MSX2, Atari ST. |
YM2151 (OPM) | Yamaha | Capcom CPS-1, and Sega arcade platforms and the Sharp X68000. |
YM2203 (OPN) | Yamaha | NEC PC-8801, various arcade games. |
YM2413 (OPLL) | Yamaha | Japanese Sega Master System, Mark III, and the MSX-1 with FM-PAC, VRC7. |
YM2608 (OPNA) | Yamaha | NEC PC-8801, NEC PC-9801, some arcade games. |
YM2610 (OPNB) | Yamaha | NeoGeo, various arcade games. |
YM2612 (OPN2) | Yamaha | Genesis, FM Towns. |
YM3526 (OPL) | Yamaha | Various arcade games. |
YM3812 (OPL2) | Yamaha | PC with AdLib or Sound Blaster, and various arcade games. |
YMF262 (OPL3) | Yamaha | PC with Sound Blaster 16, and some arcade games. |
YMF271 | Yamaha | Some arcade games. |
YMF278B (OPL4) | Yamaha | MSX with Moonsound and some arcade games. |
YMZ280B | Yamaha | Various arcade games. |
Contents
Players
- Audio Overload - Macintosh, Windows
- Game Emu Player - foobar2000
- VGM Input - Winamp
- VGM Player - DOS
Editors
- VGMTool - Windows
- vgmtoolbox - Windows
Converters
VGM to ?
- VGM to TXT - Windows - TXT
- VGMTool - Windows - VGZ
- Game Emu Player - Foobar2000 - WAV
? to VGM
- DRO to VGM - Windows - DRO
Games
Game Gear VGM Glitch
Sometimes, VGM files logged through Game Gear games will not play. This can be fixed by changing the 4F byte (usually located from 0040 to 004F) to FF.
Links
- smspower.org/Music/VGMFileFormat - Official Specs.
- en.wikipedia.org/wiki/VGM_%28file_format%29 - Wikipedia.