Author Topic: [Tutorial] Rip OPN, OPNA, OPN2, OPM and convert to SysEx format  (Read 2216 times)

Offline Tails19935

  • Newbie
  • Posts: 16
  • FM Rocks!
    • Email
Hello, this is a tutorial on how to rip and convert YM2203, YM2608, YM2612, and YM2151 patches to the SYX or SysEx format. The SYX format was commonly used for the Yamaha DX7 line up of instruments. These patches can also be played in DX7 VSTs such as Sytrus or Dexed.

Step 1: Getting the patches.

There are a few ways you can do this. There are some OPM packs that you can grab if your too lazy to manually rip them from a game. As for manually doing it, you can get a VGM of the song and use a VGM2OPM or VGM2TFI to rip the patches. My method is by using Hoot (a Japanese FM music player) and Hoot Voice Ripper or HVR.

Once you have Hoot set up, run HVR and select the music chip you plan to rip from. Load up Hoot and find the game that you want to rip the patches from. Make sure the music chip used for the game matches the one you selected in HVR. Play the song then press Ctrl+C and HVR should capture the FM settings. (In some cases you will need to do this a couple of times for the channels may change patches midway in the song. Chips with smaller channels are prone to do this.)

Once you have captured the patches, go over to File and choose Save VOPM. Name it and save it to your desired folder. In case you are wondering, yes these patches will work for the VOPM VST. VOPM doesn't work for me so that's why I'm writing this other method of playing the patches.
(This also means you could play arcade or game console FM patches on a real DX7.  ;) )

Step 2: Converting the patches.

You will need Python 2.7 and DXconvert. As of the date of this post, DXconvert 2.3.3 was used. Once Python 2.7 is installed, just run DXconvert-gui. If it doesn't start, run command prompt and go to the directory that you extracted DXconvert then type "". If it still isn't working then your Python installation may not be set up right. You should get a simple GUI program.

Load your input OPM then set your output file. When typing the name of the file for the output, make sure to put .syx at the end of it. The GUI should recognize this as the SysEx format. If you hover your cursor over the option check-boxes, they will give more info. As for me, I just leave these alone. Once your all set up, hit the green DXConvert! button. Your patches should be saved in SysEx format in the desired folder. Now all you have to do is test it in either a physical DX7 or a VST. If your patches work then voila, your done! Another note that should be added is that some of the patches will be the same. Checking nodupes or nodupes2 in DXconvert might fix this but I haven't tested it.

Step 3: Use them to your heart's content!

Play, remix, modify, you name it! If you would like to share your converted patches then link them here.

I would like to thank 5ALAZAR and TheMnk for helping me with this. As for questions, I might not be able to answer them all considering Hoot is very problematic and I have no idea how I got Python to work. But I will do my best and I bet if you post them here someone might be able to help. Cheers! :D
« Last Edit: May 02, 2017, 02:49:24 am by Tails19935 »