If you check out this fork of the original TheXor plugins:
The 1.0 changes branch is named chaircrusher-v1.0-port
I got it to the point where I’d need to know more about Rack internal and 1.0 API changes than I do to figure out how to finish up. I’ve done all the simple mechanical things as detailed in the porting guide.
4 Likes
Unfortunately, I cannot help. Not a programmer…
But I just want to say I’m very happy that you have taken the initiative to pick this up!
4 Likes
I took a look in case it was easy; which it isn’t. But I got pretty far.
Apply this patch and you will see what most of the fixes are. They amount to
1: Using modern classes
2: Unmangling some of the name mangling which the perl did
3: Commenting out the reset() idiom until you move it to the widget
etc…
Anyway I’m about to do some travel but applying this patch will at least get you a lot closer (save this file then do git apply better.patch.txt
from your root folder). Hope that helps some.
better.patch.txt (17.6 KB)
And sorry I don’t have time to finish it right now; it looks like a solid few hours of work to me to get it ported and I don’t have that in the next few weeks. But I think that’s a good start.
2 Likes
So this is a patch on top of my branch?
i have little knowledge on C++ programming
can help with building on windows if needed (I ve just tried but too many errors to go to finally compile the plugin.dll)
and of course thanks 
Spent a bit more time this morning and got it to build
Here’s a patch against your commit bfe462167de929ec7fcc0ef3c1035a66246fe605
builds.patch.txt (26.0 KB)
This builds and rack runs but, of course, the browser immediately crashes. Those module==null guards need to be applied. But you can at least debug which one gets you first now in a debugger.
Also there’s one pattern (reset and randomize on the Module vs the ParamWidget) which I fixed by just commenting out the unsupported functions and adding a FIXME
I’m offline for a couple of weeks but hope this helps get you there. Like I said: on my mac this now builds but does not run.