hi georg, i had the same problem when i tried compiling uDMX on linux. the trouble i think is in the new method:
floatinlet_new((t_object *)x, (t_float *)x->channel); //assigns float in inlet 2 directly to channel
where channel is an int. this compiles but crashed pd when second inlet is used. for me it worked to rewrite it using inlet_new() instead:
inlet_new(&x->p_ob, &x->p_ob.ob_pd, gensym("float"), gensym("ft1"));
then of course you need a dedicated method to assign the input to x-
channel
something like:
void uDMX_ft1(t_uDMX *x, t_floatarg f) { x->channel = f; ... }
but why don't you ask michi himself. normally he is quite responsive. volker.
On 26 May 2009, at 09:26, Georg Werner wrote:
Hi, i tried to compile the uDMX ( http://www.anyma.ch/research/udmx/ ) external on winxp. which worked after some trial and error. but now my question is: can somebody tell me by looking an the source why it crashes pd if i send a float message to the right inlet (there is no device connected - so maybe it wont crash if there is, but i'm curious how to figure out the reason) i started pd with -d (different numbers) and there was no output related to the crash (which debug level is the best for this case?) best g.