I spent the last few hours adding .VGM support to RetroCopy. I've never looked at the format so I was surprised by a few aspects of it.
VGM (Video Game Music) is a sample-accurate sound logging format for the Sega
Master System, the Sega Game Gear and possibly many other machines (e.g. Sega
Genesis).
.VGM is a nice straightforward format, easy to support (in a way). It's not cycle accurate though which is the major downside to me, it's accurate to 1/44100 of a second instead of say 1/7000000 . To nerds that matters! I also don't like the way sound chips are separate entities from the systems themselves. It would be a lot easier if it said "this is from Mega Drive" rather than "SN79489 and YM2612" as you don't have to handle weird configurations that don't exist. It would also be easier to plug into existing code that runs Mega Drive emulation as you wouldn't need to write mapper functions.
It got me thinking that I should probably put together a cycle accurate logging format but I'll leave that to another day I think. The bad thing is when I get these "ideas" my brain starts solving all the problems for me. ie I'm trying to sleep and the brain is like "yeah if you look for the repeating sample patterns you'll save space in the RGM format, the search pattern should be at least 16 bytes long, etc". So instead of a VGM section within RetroCopy there is a "Retro Game Music" section, where one day I'll likely add a "RGM" cycle accurate format.
The major reason I added VGM support is because I want to play music files in the interface. I'll be bundling a few nice sounding tracks so instead of silence you'll get some music now while going around the interface, to get you in the mood. And if you don't like those tracks just place your own in appropriate folder and RetroCopy will randomly go through and play the tunes. Of course if you hate music you can just turn it off.
So how do VGMs sound in RetroCopy compared to other players? Pretty good I think, but I guess you'll have to see, or rather hear, for yourself.