Skip to content

converting ym2203 vgm to ym2612

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

Moderator: Staff

converting ym2203 vgm to ym2612

Post by nitrofurano »

i’m now seeing this: https://www.youtube.com/watch?v=Yr5-2-w5eRE
how can we convert ym2203 vgm files to ym2612, and hear them on megadrive? (i’m specially curious about the arcade ones! ;) )
the video description also mentions vgm_opnatob , vgm_ayconv and vgm_opnclk , that i find nowhere - any clue?
thanks!
  • l_oliveira Offline
  • Posts: 7
  • Joined: 2015-09-23, 6:14:23

Post by l_oliveira »

A while ago I made those python scripts to experiment with that idea and the results were pretty damn encouraging.

What the script does is generate a hard coded header then copy all data over from source file into a new destination file. While doing so it scans and modifies the data to redirect writes meant to the second YM2203 into the second register array of the YM2608/YM2612. Also, it catches key on events meant to the second YM2203, redirecting and converting them to the first register array of the targeted FM chip.
YM2608/12 acknowledge key on events only on the first register array.

There's also other conversion scripts meant for achieving weird things like converting AY-3-8910 data meant for the YM2203 into a separate AY stream. That is meant for playing YM2203 data on a real YM2612 chip connected to a MSX computer (which has the AY-3-8910), achieving then playback on all channels.

Hope this is useful for you. I used this stuff to create the roms with the deadfish VGM player which plays Ghost'n Goblins music on the Mega Drive which were posted at SEGA-16.
Attachments
python_covert.zip
Convert 2xYM2203 VGM to 1xYM2612
(5.5 KiB) Downloaded 340 times
  • User avatar
  • MaliceX Offline
  • Posts: 226
  • Joined: 2012-09-29, 11:45:48
  • Location: Australia
  • Contact:

Post by MaliceX »

Hi. I'm Marisueksu from YouTube. :P Thanks for your interest with that video.

Here's some links to what you're looking for. NOTE: No warranty implied. Use at own risk etc. - they're experimental at this stage.

vgm_opnclk you can find on this thread.
viewtopic.php?f=3&t=2013 for vgm_opnclk


....and i guess you found my other thread for the rest. :P
-dj.tuBIG/MaliceX

Post by nitrofurano »

thanks! \o/

Post by nitrofurano »

i tried 2203_2612.py on 07_NameEntry_unused.vgm (Tokio/ScrambleFormation, Taito - imho, Hisayoshi Ogura was a genius composing that with the resources and deadlines he had available that time - he mentioned a bit that experience at https://vimeo.com/144780980 ) - the result differs on the notes frequency, more acute (i think it is related with a different frequency that the ym chip is running on each hardware - (~3MHz -> 7.67MHz, i guess) - i found similar situation from amstrad-cpc, ay-3-8910 runs faster there than on msx or zx-spectrum, and you can notice the difference instantly there as well) - is there some argument value we should add for reaching a closer result?
Post Reply