VOGONS


First post, by BadHellie

User metadata
Rank Newbie
Rank
Newbie

Hi all, I am new here. As a premise, I am an expert dsp coder with a long experience, but I can't know everything.
For some personal reasons too long to explain, I need to write a D-110 emulator VST, because after some search I saw no such thing exists yet.
Roland made a D50 emulator VST, but the sound engine of the D50 is not quite the same as the D110, despite still LA. I am perfectly aware D50 LA is more advanced and how, but I need to reproduce a lot of custom timbres I had made in the 90's with the D110, and they must sound identical.

Eventually I stumbled across Munt, and I also found and tested the VSTi version of Munt, which however has little purpose to me, since it has no panel to edit patches !!
I have therefore some questions:

1. Is the MT32 LA engine the same as the D20/D110 (same rom samples, same analog waveforms, same TVF response) or it is different ? I never had any MT32 so I can't say. I ask because, in case they were the same, I could easily check Munt code for hints about emulation (in particular, the tricky part is the analog part, since it looks like the tvf is not a real filter, resonance is not a real resonance, and the sawtooth wave is somehow made from the square wave, also I haven't fully understood well how they coped with aliasing)

2. How can one edit custom patches with the Munt Vsti ? Even just for some tests ? I don't want to use Munt standalone if possible (I am using Reaper as my DAW). Is there any way to route a standalone MT32 sysex-based MT32 editor to Reaper Midi in, or is there any simpler solution to edit Munt Vsti patches from within my DAW ?

Thanks in advance 😀

Reply 1 of 3, by sfryers

User metadata
Rank Member
Rank
Member
BadHellie wrote on 2025-06-12, 12:25:

1. Is the MT32 LA engine the same as the D20/D110 (same rom samples, same analog waveforms, same TVF response) or it is different ? I never had any MT32 so I can't say. I ask because, in case they were the same, I could easily check Munt code for hints about emulation (in particular, the tricky part is the analog part, since it looks like the tvf is not a real filter, resonance is not a real resonance, and the sawtooth wave is somehow made from the square wave, also I haven't fully understood well how they coped with aliasing)

I believe the engines are very similar, but not identical. The MT-32 MIDI specification allows it to intepret D110 SysEx messages, but I understand the output will not always be exactly the same as a real D110.

BadHellie wrote on 2025-06-12, 12:25:

2. How can one edit custom patches with the Munt Vsti ? Even just for some tests ? I don't want to use Munt standalone if possible (I am using Reaper as my DAW). Is there any way to route a standalone MT32 sysex-based MT32 editor to Reaper Midi in, or is there any simpler solution to edit Munt Vsti patches from within my DAW ?

This is possible using LoopMIDI (https://www.tobias-erichsen.de/software/loopmidi.html) or any other software utility that can create virtual MIDI ports:

  • Install LoopMidi
  • Install MT-32 Editor
  • Open Reaper and enable the LoopMIDI port as a MIDI In port
  • Insert Virtual Instrument on New Track using MuntVSTi
  • Set MIDI Input to LoopMIDI
  • Open MT-32 Editor and set the MIDI Out device to LoopMIDI.
The attachment MT32Edit-Reaper-MuntVSTi.jpg is no longer available

MT-32 Editor- a timbre editor and patch librarian for Roland MT-32 compatible devices: https://github.com/sfryers/MT32Editor

Reply 2 of 3, by BadHellie

User metadata
Rank Newbie
Rank
Newbie

Thank you a lot Sfryer for your answer, very helpful !
I will try out that way then.
My goal (well, experiment) by now is indeed being able to edit a mt32 patch with Munt, to just have one analog partial, to check the waveforms and filter response, just to understand if at least the analog part is the same as the d10/20/110. If this turned out the case, at least I can concentrate on 'decyphering' Munt source codes to attempt a reverse engineering (or kind of: I suspect even Munt is a kind of guesswork...)

Reply 3 of 3, by BadHellie

User metadata
Rank Newbie
Rank
Newbie

So, I managed to activate the workflow above and could start xperimenting 😀
It is a pity that Munt vst does not support patch editing though, at present it could have been the only LA vst emulator (if we exclude the official D50) !!!

From some preliminary tests, the analog part (the one I am interested with, because tricky to emulate) seems *very close* to the D20.
It looks like TVF uses waveforms computed for every note as in the D20 (in fact, if you shift a note with the pitch bender, resonance is shitfed too, which does not happen if you press the target key without bending).
Sawtooth also seems a plain signed multiplication (ring mod) of the resulting "filtered" square wave with a sine wave as in the D20. Ok !
Only differences found by now are:
1. D20 has a bug with resonance, which in some cutoff/res combination goes nuts - Munt has not this 'bug'
2. D20 seems using a slight HPF - in fact the square wave is not really square, but has the typical curvature of a slight HPF or DC filter applied

I can't say if the real MT32 behaves the same or not though, by not having one to test.

Well Munt source code can therefore be a good starting point for emulating a D10/20/110, it now seems.
I think I will contact the author of Munt VST asking if he has any plans to integrate a patch editor, trying to convince him it would be a nice thing 😉