ZynAddSubFX 2.1.0 bug

Official support for: zynaddsubfx.sourceforge.net
Post Reply New Topic
RELATED
PRODUCTS

Post

Hi.
KrzysiekK noticed about the bug that prevents changing the part. This bug appears in every version.
I updated on the site the updated source code. I will update the installer as soon I can.
Meanwhile, I am deleting the 2.1.0 installer to avoid spreading the buggy version.

Sorry for this. :cry:
Paul

Post

I solved the bug and I released the 2.1.1 installer. Please go and download it.
Paul

Post

Hi Nasca,

I took a look at the sourcecode. Zynaddsubfx's setchunk and getchunk are missing a parameter. So you defined two new functions by "overloading" them instead of "overriding" them.

Defined in Vstsdk 2.3 audioeffect.h:

Code: Select all

virtual long getChunk (void** data, bool isPreset = false)
    { return 0; } 
virtual long setChunk (void* data, long byteSize, bool isPreset = false)
    { return 0; }
Defined in zynaddsubfx's main.C:

Code: Select all

long VSTSynth::getChunk(void** data) 
{ 
    int size=0; 
    size=vmaster->getalldata((char **)data); 
    return(size); 
}; 

void VSTSynth::setChunk(void *data,long size) 
{ 
    vmaster->putalldata((char*)data,size); 
}; 
Both are missing the "bool isPreset" parameter. Also, both return "size" which is type "long". Fix them and parameter saving should work.
Last edited by beanie on Wed Dec 01, 2004 6:52 pm, edited 1 time in total.

Post

Bug in canDo() method. It is returning that it can do almost everything the host is querying for! Think this should fix many host loading problems.

canDo() method from VSTaudiooutput.C:

Code: Select all

long int VSTSynth::canDo(char *txt)
{
    if (strcmp(txt,"receiveVstEvents")!=0) return (1);
    if (strcmp(txt,"receiveVstMidiEvent")!=0) return (1);
    return(-1);
};
I think the strcmp should be "==" not "!=" since if the strings are the same you want to return 1 to tell the host the plugin can do it. So the strcmp should look like this:

Code: Select all

strcmp(txt,"receiveVstEvents")==0
strcmp(txt,"receiveVstMidiEvent")==0
SUGGESTION:
===========
Might use audioeffectx's getDirectory() function to get the plugin's directory to better retrieve things such as banks, ZynAddSubFX.cfg file, and pthreadGC.dll file. I think the config file ends up in the host's directory. Returns a (char*) for Windows or FSSpec for Mac.

Post

Hi.
Thanks for telling me.
I made the changes (changing from != to ==), but I cannot compile it, because I don't longer user windows.
Anyway, the source is under cvs at sourceforge.net. Also, I will try to compile it from linux, because I found that I can cross-compile it. But this, later :)

Paul

Post

Hello,

how can I compile it by myself? Or is the fixed version downloadable?

I can't find any information on:
http://zynaddsubfx.sourceforge.net
----
Regards,
Matti

Post

Matti wrote:Hello,

how can I compile it by myself? Or is the fixed version downloadable?

I can't find any information on:
http://zynaddsubfx.sourceforge.net
Install ZynAddSubFX and select to install the source code or download the source code (tar file). Now, look in the source code directory the file "compile.win32". There describes what you should do.

P.S. If you want to distribute the compiled .exe or .dll to others, please include the source code.

Paul

Post

Hi,

I didn't find the source code.
Can anybody give me the direct link for the Windows-Version?

Thanks in advance.
----
Regards,
Matti

Post

Matti wrote:Hi,

I didn't find the source code.
Can anybody give me the direct link for the Windows-Version?

Thanks in advance.
http://heanet.dl.sourceforge.net/source ... -2.1.1.exe

it contains the installer and the source code (be sure to enable the "Source code" checkbox to install the source code).
Paul.

Post Reply

Return to “ZynAddSubFX”