MIDIBoxSIDKontrol VST

I’ve been working on this in synthmaker for the last few days. It’s a VST control surface for your Midibox SID. I used the standard CCs instead of NRPNS, because I do not know how to work with NRPNs in synthmaker yet. I believe I’ve found and fixed most of the bugs, but it’s possibel there could still be one or two.

*please note that this only works with the lead engine.

To Do:

* test in multiple hosts

* ensure all parameters can be automated

* fix osc and filter selectors

* fix bank select knob

* fix VCA sustain knob bug

* fix knob sensitivity

* GUI needs work (possibly add tabs to shrink the overall size)

* currently, only midi channel 1 is used, add selector for other channels* improve waveform selector

* add filter type selector

[MIDIBoxSIDKontrol.zip](< base_url >/applications/core/interface/file/attachment.php?id=7127)

I started working on this last night in synthmaker. It’s a VST control surface for your Midibox SID. I used the standard CCs instead of NRPNS, because I do not know how to work with NRPNs in synthmaker yet. So far it is untested, so I’m sure it has it’s fair share of bugs at the moment. I wanted to share it regardless. When I make updates, I’ll post them here.

Wow, thats cool! Can’t wait to build my sammichSID and check your VST out.

Right now, I just hope it works. :slight_smile: The only thing I’ve tested is that it does, in fact, send midi out. But I only checked that it was making the lights on my midi port blink :cool: In theory it should work, but I won’t know until I can test it after work today.

Okay, let us know. The VST looks definitely promising. Didn’t know that the sammich has that much parameters.

Okay, let us know. The VST looks definitely promising. Didn’t know that the sammich has that much parameters.

and that’s not even all of them :slight_smile:

CCs are only supported by Lead engine, so no Multi, Bassline or Drum action…

It would be really nice if you asked in the SM forum how to do the NRPN thing,

so you could cover all MBSID engines + full resolution on parameters :smiley:

Labelwhore, you have no idea what you are getting yourself into :slight_smile: Maybe I should finally finish my editor and compile it to VST as well… One of these days…

Btw, sammichSID is a regular mbSID v2 and has all the parameters a regular mbSID v2 has…

Are you interested to implement this in Juce instead of Synthmaker?

You could take the plugins of the ctrlr project as inspiration.

It would have many advantages, e.g. we could not only compile a VST for Windows, but also for Linux.

And we could compile an AU component for MacOS.

Background: last weekend I took the code of MBSID V3, combined it with the reSID emulator, and put it into an AU plugin:

This plugin allows to emulate a MBSID on a Mac accurately (a VST for Windows could probably be compiled as well).

All “Vintage Preset” patches can already be played, even Multi/Bassline/Drum patches!

Support for sending SysEx messages to a real MBSID could be easily added, since the appr. informations are already available in the MBSID V3 code.

See also the source code as a reference.

(the simple Juce editor component is located under juce/src/EditorComponent.cpp)

As you can see in the snapshot above, the GUI is currently very minimalist.

You could help me in creating the GUI while I could continue with the low-level stuff. :slight_smile:

Best Regards, Thorsten.

Labelwhore, you have no idea what you are getting yourself into :slight_smile: Maybe I should finally finish my editor and compile it to VST as well… One of these days…

Btw, sammichSID is a regular mbSID v2 and has all the parameters a regular mbSID v2 has…

Oh I know I’m in way over my head. It’s just that I have synthmaker, some free time, the cc implimentation chart, and nobody had posted a VST editor that I was aware of. :slight_smile:

T.K., I only used high level synthmaker modules for this. I’m afraid JUCE looks like it’s outside of my skillset.

Too bad :frowning:

However, for those who are interested, here the AU Plugin which allows you to emulate a MBSID w/o hardware:

/edit: deleted link - see separate posting here:

<___base_url___>/index.php?/topic/13759-emulated-midibox-sid-au-and-vst-for-macwindows/&do=embed

It has to be copied into your Library/Audio/Plug-Ins/Components directory (if it doesn’t already exist, create it!)

Thereafter (re)start your DAW - done :slight_smile:

It’s built for MacOS 10.6 (Snow Leopard) - a build for older OS versions is available on request.

Note that the high CPU consumption, the weak filter sounds and the aliasing effects are caused by the reSID emulation.

Only the real hardware will produce the sounds we really love! :slight_smile:

Best Regards, Thorsten.

Maybe I should finally finish my editor and compile it to VST as well…

YES… YEEEEEEEES!!!

I already has MB6582 and DAW fired up for testing :smiley:

Too bad :frowning:

However, for those who are interested, here the AU Plugin which allows you to emulate a MBSID w/o hardware:

http://www.ucapps.de/tmp/MIDIboxSID.component.zip

It has to be copied into your Library/Audio/Plug-Ins/Components directory (if it doesn’t already exist, create it!)

Thereafter (re)start your DAW - done :slight_smile:

It’s built for MacOS 10.6 (Snow Leopard) - a build for older OS versions is available on request.

Note that the high CPU consumption, the weak filter sounds and the aliasing effects are caused by the reSID emulation.

Only the real hardware will produce the sounds we really love! :slight_smile:

Best Regards, Thorsten.

TK :slight_smile: could you be persuaded to compile this for Windows ?? although it is an emulation it would still be a lot of fun to play with!

thanks for the goodie, nice one TK!

TK :slight_smile: could you be persuaded to compile this for Windows ?? although it is an emulation it would still be a lot of fun to play with!

This has to be done by somebody with Windows skills.

The instructions to compile the VST are given in the “extras/audio\ plugins/How\ to\ use\ this\ framework.txt” document of the juce library.

Best Regards, Thorsten.

:frantics: :frantics: :frantics:

Woooot! Something i dreamed of coding before has actually been made a dream come true by TK!

I was considering doing a java app to convert patches,

something that would recognise a lead, or bass melody, or drums for example, based on the range of notes that same patch was played for each note.

A class that could be imported into the existing Midibox V2 Java Editor, under a different tab.

It might be a bit difficult doing all that with hexadecimal code though.

On the gui side, buttons marked Lead 1, Lead 2, etc would pop up,

as it read the sid file, and it would be cool to be able to play back that selected patch with the sidplay engine , if that was possible, (or just sent it to MbSid via midi).

You could then click an import button which would import the selected patch, into the rest of the V2 Editor,

with all knobs in the relevant positions, so you could save the patch.

All dreams for now only!

Now i’ll be able to see what patches are playing wrong on my :clover:-built Mb-SID!

Whats even more significant about this VST,

is that with a full UI, it will be the most accurate Sid emulation VST out there.

Before Quadra SID was released it first used the ReSID emulation,

but as we all know, reFX had to remove the ReSID emulation when they were denied permission to be able to use it commercially.

The KVR users will have a field day when this is near completion,

in fact maybe it would be worth seeking help outside Midibox to get a windows version of this VST finished?

There would probably be more people using it to play with ReSID,

than with a midibox if that happened though.

I updated the files in the first post. I found a couple bugs and fixed them, but there are still plenty more to be fixed :slight_smile:

Especially in the FL version of SynthMaker :wink: Does it output NRPNs yet?

Especially in the FL version of SynthMaker :wink: Does it output NRPNs yet?

Theoretically, it could, but I haven’t figured it out yet. There are modules to allow sending sysex strings, but I haven’t messed with them enough to know whether it would work or how to make it happen. The midi event module, which is what is really needed for make sending NRPNs easy, doesn’t work properly from what I understand.

To be honest though, I kind of like the fact that using the standard CCs is non-destructive.

Especially in the FL version of SynthMaker :wink:

Speaking of an FL version, I haven’t tested this in FL, but I could make a native FL version too if anyone wants it.