VGM format update - NES and GB support

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
VGM format update - NES and GB support
by on (#78280)
What Valleybell (A buddy of mine at SMSPower.org) is going to release soon is a update to the VGM format, out of which: GB and partial NES support.

The downside is you actually might use a special version of MESS (Multi-System Emulator) to record them. And Expansions are not supported yet.

Also DMC may not happen, because of NES RAM issues. so any song made for VGM will not appear to play DMC, or get the DMC removed!

The other problem is hosting of the programs used, He is currently using a bad upload site (mediafire) and may have legal problems in some countries.

If someone wants to help get him to upload in a proper space such as Freewebs or Google, That would help!

Forum post is Here:
http://www.smspower.org/forums/viewtopic.php?p=65923#65923

by on (#78282)
Weren't people trying to move away from VGM-based formats in favor of NSF-style formats?

by on (#78283)
Dwedit wrote:
Weren't people trying to move away from VGM-based formats in favor of NSF-style formats?


NSF can be kept, But what if you want to have a more easier format.

It can be easier port music to other systems, Like the old SND format. Because of the fact Chris Covell originally had a program that uses such format, Like his old NES Sound program he had for C64.

For me, This makes converting NES to SMS/GG music easier. Just need to know what VGM ports it uses and to manually adjust the stuff needed.

Unless, of course if someone makes a 6502/NSF emulator for SMS, That will be cool.

by on (#78739)
My issue with formats in general is quality control. One thing about stub formats like VGM has over others is support over quality; support of different media and community support. Pure formats like GBS/NSF/SID based on rips or assembly code specific to the format work on hardware without extra hardware supported player code. Unfortunately many of the emulated players or player plugins tend to be made by lone wolves without much community support. How many partially functional or imperfect NSF players are there?

Each has their saving grace over crippling fault. However I'm of the opinion to take quality over quantity; as it truly is about a matter of opinion and choice. I don't support VGM formats because 20 years down the road if there is some sort of internet catastrophe (or just normal wear and tear) and the source codes for the VGM players aren't available and the documentation is no longer to be found, the pure formats are plain code and will stand the test of time.

In short, it's great that there's new support on a stub format, but where are the accurate and near-perfect players for NESdev's NSF, GBS, and SGC formats? The best option I know is NEZPlug++ for all three formats but it's made by a Japanese author who has a board only in Japanese and does not respond in English. He must also lurk here in NESdev.

by on (#78892)
Yes, I agree that NSF is ideal, even if only because it's smaller and potentially supports easier extraction of data for further editing in a tracker. But VGM and other logged formats require emulating only one core, compared to two (6502 and the 2A03 audio core) for player-engine formats like NSF, GBS, SGC, the PSF family, and even SPC. This means documentation for both cores must survive.

In addition, log formats often support dropping the "needle" anywhere in the file and getting something reasonable within a second, while player-engine formats require emulating the whole thing from the start. If you want any kind of robust seeking in an SGC player, you pretty much have to convert it to VGM on load.