|
@@ -3,10 +3,10 @@ |
|
|
|
|
|
|
|
|
#define DLL_PATH "../../vst2_bin/veeseevstrack_effect.dll" |
|
|
#define DLL_PATH "../../vst2_bin/veeseevstrack_effect.dll" |
|
|
|
|
|
|
|
|
#define SO_PATH "../../vst2_bin/veeseevstrack_effect.so" |
|
|
|
|
|
|
|
|
// #define SO_PATH "../../vst2_bin/veeseevstrack_effect.so" |
|
|
// #define SO_PATH "../vst2_lglw_debug_plugin/debug_lglw.so" |
|
|
// #define SO_PATH "../vst2_lglw_debug_plugin/debug_lglw.so" |
|
|
// #define SO_PATH "/usr/local/lib/vst/debug_lglw.so" |
|
|
// #define SO_PATH "/usr/local/lib/vst/debug_lglw.so" |
|
|
// #define SO_PATH "../../vst2_bin/debug_lglw.so" |
|
|
|
|
|
|
|
|
#define SO_PATH "../../vst2_bin/debug_lglw.so" |
|
|
|
|
|
|
|
|
// #define SO_PATH "/home/bsp/.vst/DiscoveryPro68DemoLinux/64-bit/DiscoveryPro64.so" |
|
|
// #define SO_PATH "/home/bsp/.vst/DiscoveryPro68DemoLinux/64-bit/DiscoveryPro64.so" |
|
|
// #define SO_PATH "/home/bsp/.vst/AcidBoxDEMO-Linux/AcidBoxDEMOVST-x64.so" |
|
|
// #define SO_PATH "/home/bsp/.vst/AcidBoxDEMO-Linux/AcidBoxDEMOVST-x64.so" |
|
@@ -16,6 +16,9 @@ |
|
|
// #define SO_PATH "/home/bsp/.vst/tunefish-v4.2.0-linux64-vst24.tar/Tunefish4.so" // does not load (GLIBC error) |
|
|
// #define SO_PATH "/home/bsp/.vst/tunefish-v4.2.0-linux64-vst24.tar/Tunefish4.so" // does not load (GLIBC error) |
|
|
// #define SO_PATH "/home/bsp/.vst/zyn-fusion/ZynAddSubFX.so" |
|
|
// #define SO_PATH "/home/bsp/.vst/zyn-fusion/ZynAddSubFX.so" |
|
|
|
|
|
|
|
|
|
|
|
#define Dprintf_verbose if(1);else printf |
|
|
|
|
|
// #define Dprintf_verbose if(0);else printf |
|
|
|
|
|
|
|
|
#include <yac.h> |
|
|
#include <yac.h> |
|
|
|
|
|
|
|
|
#ifdef YAC_WIN32 |
|
|
#ifdef YAC_WIN32 |
|
@@ -65,54 +68,45 @@ static void *loc_getProperty(Display *_display, Window _window, const char *_nam |
|
|
} uptr; |
|
|
} uptr; |
|
|
uptr.any = 0; |
|
|
uptr.any = 0; |
|
|
|
|
|
|
|
|
// printf("xxx debug_host: loc_getProperty: LOWER userSize=%d userCount=%lu bytes=%lu data=%p\n", userSize, userCount, bytes, data); |
|
|
|
|
|
|
|
|
Dprintf_verbose("xxx debug_host: loc_getProperty: LOWER userSize=%d userCount=%lu bytes=%lu data=%p\n", userSize, userCount, bytes, data); |
|
|
|
|
|
|
|
|
if(NULL != data) |
|
|
if(NULL != data) |
|
|
{ |
|
|
{ |
|
|
if(userCount >= 1) |
|
|
if(userCount >= 1) |
|
|
{ |
|
|
{ |
|
|
// if(userCount >= 2) |
|
|
|
|
|
// { |
|
|
|
|
|
// printf("xxx debug_host: loc_getProperty: lo=0x%08x hi=0x%08x\n", ((uint32_t*)data)[0], ((uint32_t*)data)[1]); |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
|
|
// lower 32-bit |
|
|
// lower 32-bit |
|
|
uptr.ui[0] = *(long*)data; |
|
|
uptr.ui[0] = *(long*)data; |
|
|
uptr.ui[1] = 0; |
|
|
uptr.ui[1] = 0; |
|
|
|
|
|
|
|
|
// printf("xxx lower=0x%08x\n", uptr.ui[0]); |
|
|
|
|
|
// // printf("xxx upper=0x%08x\n", uptr.ui[1]); |
|
|
|
|
|
|
|
|
Dprintf_verbose("xxx lower=0x%08x\n", uptr.ui[0]); |
|
|
|
|
|
|
|
|
XFree(data); |
|
|
XFree(data); |
|
|
|
|
|
|
|
|
// // if(userCount >= 2) |
|
|
|
|
|
|
|
|
XGetWindowProperty(_display, |
|
|
|
|
|
_window, |
|
|
|
|
|
atom, |
|
|
|
|
|
1/*offset*/, |
|
|
|
|
|
1/*length*/, |
|
|
|
|
|
False/*delete*/, |
|
|
|
|
|
AnyPropertyType, |
|
|
|
|
|
&userType/*actual_type_return*/, |
|
|
|
|
|
&userSize/*actual_format_return*/, |
|
|
|
|
|
&userCount/*nitems_return*/, |
|
|
|
|
|
&bytes/*bytes_after_return / partial reads*/, |
|
|
|
|
|
&data); |
|
|
|
|
|
|
|
|
|
|
|
// printf("xxx debug_host: loc_getProperty: UPPER userSize=%d userCount=%lu bytes=%lu data=%p\n", userSize, userCount, bytes, data); |
|
|
|
|
|
if(NULL != data) |
|
|
{ |
|
|
{ |
|
|
XGetWindowProperty(_display, |
|
|
|
|
|
_window, |
|
|
|
|
|
atom, |
|
|
|
|
|
1/*offset*/, |
|
|
|
|
|
1/*length*/, |
|
|
|
|
|
False/*delete*/, |
|
|
|
|
|
AnyPropertyType, |
|
|
|
|
|
&userType/*actual_type_return*/, |
|
|
|
|
|
&userSize/*actual_format_return*/, |
|
|
|
|
|
&userCount/*nitems_return*/, |
|
|
|
|
|
&bytes/*bytes_after_return / partial reads*/, |
|
|
|
|
|
&data); |
|
|
|
|
|
|
|
|
|
|
|
// printf("xxx debug_host: loc_getProperty: UPPER userSize=%d userCount=%lu bytes=%lu data=%p\n", userSize, userCount, bytes, data); |
|
|
|
|
|
if(NULL != data) |
|
|
|
|
|
{ |
|
|
|
|
|
// upper 32-bit |
|
|
|
|
|
uptr.ui[1] = *(long*)data; |
|
|
|
|
|
printf("xxx upper=0x%08x\n", uptr.ui[1]); |
|
|
|
|
|
XFree(data); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// upper 32-bit |
|
|
|
|
|
uptr.ui[1] = *(long*)data; |
|
|
|
|
|
Dprintf_verbose("xxx upper=0x%08x\n", uptr.ui[1]); |
|
|
|
|
|
XFree(data); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
printf("xxx debug_host: loc_getProperty: return value=%p\n", uptr.any); |
|
|
|
|
|
|
|
|
Dprintf_verbose("xxx debug_host: loc_getProperty: return value=%p\n", uptr.any); |
|
|
|
|
|
|
|
|
return uptr.any; |
|
|
return uptr.any; |
|
|
} |
|
|
} |
|
@@ -264,10 +258,10 @@ void open_and_close(void) { |
|
|
{ |
|
|
{ |
|
|
XEvent xev; |
|
|
XEvent xev; |
|
|
XNextEvent(d, &xev); |
|
|
XNextEvent(d, &xev); |
|
|
printf("xxx call XEventProc[%d]\n", evIdx++); |
|
|
|
|
|
|
|
|
Dprintf_verbose("xxx call XEventProc[%d]\n", evIdx++); |
|
|
eventProc(&xev); |
|
|
eventProc(&xev); |
|
|
|
|
|
|
|
|
printf("xxx calling effect->dispatcher<effEditIdle>\n"); |
|
|
|
|
|
|
|
|
Dprintf_verbose("xxx calling effect->dispatcher<effEditIdle>\n"); |
|
|
effect->dispatcher(effect, effEditIdle, 0, 0, NULL, 0.0f); |
|
|
effect->dispatcher(effect, effEditIdle, 0, 0, NULL, 0.0f); |
|
|
} |
|
|
} |
|
|
#endif |
|
|
#endif |
|
|