I made a program VGMCK, which is MML compiler into VGM format. I hope to eventually add support of all chipsets, but currently it only has some. It also includes documentation and source-codes.
Download:
http://zzo38computer.org/vgm/vgmck.zip
You are free to contribute to documentation and/or to program to implement the other chips of VGM, as long as the program has a license which is compatible with GNU GPL v3 or later version.
Please write other question/comments/suggestion/complaints too.
Chip support:
- SN76489 PSG
- OPL2
- HuC6280 (PC-Engine)
- Famicom (2A03)
- GameBoy
- NeoGeo Pocket (T6W28)
- QSound
- OPLL
- OPN2
- Pokey
- OPL3
- General Instruments AY-3-8910
- AY8930 (supported by the VGM format, but not by the emulator)
- OPL4
VGMCK does have a large number of other features, including:
- Detune
- Transpose
- Text macros
- Track questioning
- Custom musical scales with up to ten letters
- Custom pitches for the notes of the scale
- Many (not all) chips can be doubled (as specified in VGM specification)
- Full GD3 support (including Unicode)
- Change the clock rate and options of any chips
- Change the frame rate
- Auto arpeggio
- Local desynchronized loops
- Entire song loops (which cannot be desynchronized, though)
- Sample list macros
- Auto track switching
- Direct register write
- Direct VGM write
- Fast forward
- Portamento
- more...