Skip to content

converting vgm to tracker files

Technical discussion about the VGM format, and all the software you need to handle VGM files.

Moderator: Staff

converting vgm to tracker files

Post by nitrofurano »

some of you might figured that i started to code a .vgm to VortexTracker .txt - for now it only reads sn76489 and ay-3-8910 vgm files (there are still some resulting errors, like wrong pattern play order length, missing loop location, some missynchronicity, etc.) - ... 7305#p7305

i'm curious about, somehow, to be able to read all sound chips supported from vgm file, read the frequency, volume, samples and effects from them, and write in a kind of tracker file (ascii-based format for now, and then trying to convert these files to .mod, .s3m, .it, etc.)

the results from vgm2txt converter were very helpful, and would be great if this converter could obtain more information that might be helpful - references to technical documentation about each of these chips would be very useful as well - i'm asking this because i’m about to start converting from pokey, rp2a03, rp2c33 (i'm struggling in understading the values from both of these), k051649, and later all those ymxxxx

what do you all think?
  • ctr Offline
  • Posts: 492
  • Joined: 2013-07-17, 23:32:39

Post by ctr »

VGM files lack the information necessary for sample-based tracker conversions. Without extra human input, it will be almost impossible to get things right like BPM, base sample rates, envelopes (for some chips). It's a better idea to reverse engineer the games' sound drivers instead and try to convert directly from the source format. For module conversions, PGM games are probably the easiest, you can look at my converter, however some other arcade sound drivers have been documented, you can look at Cannonball for Outrun (and possibly other games) and VGMTrans for CPS2 Qsound...

For PSGs like the 2A03, there's a modified version of Famitracker that logs chip writes from an NSF file and outputs an FTM. Even then it won't get everything right, since Famitracker lacks support for some 2A03 chip features.

Post by nitrofurano »

thanks for the tips! :)
  • Tom Offline
  • Ragequit Member
    Ragequit Member
  • Posts: 496
  • Joined: 2011-11-30, 17:26:44
  • Location: Italy
  • Contact:

Post by Tom »

Yes, generally speaking, a vgm to module conversion wouldn't produce very good results, because of the timing (as mentioned) but not only.

Amongst the formats with a converter, there is a SMPS to XM converter by Puto, which can be used to obtain XM files of many Sonic songs.
Also known as nineko.

Post by nitrofurano »

it seems that vgm files with simpler chips (like ay-3-8910, sn76489, etc.) are easier to get converted
(552 Bytes) Downloaded 332 times

Post by nitrofurano »

i were now trying to convert vgm files also with k051649 to a kind of .mod file (8 channels) in ascii mode (i'm trying to propose such kind of file for trackers like MilkyTracker, since it’s very useful to edit a tracker file in a text editor as well - the .mod in the attachment was a copy/paste from the text file to ModPlugTracker) - the tempo is still wrong, but it seems not impossible to have an accurate conversion soon - i'm seeing that these simple chips are quite simple to be converted to mod-like files - yamaha ym chips seems to be another quite different situation, i guess
(9.92 KiB) Downloaded 335 times
Post Reply