On Thu, Nov 21, 2013 at 07:22:31PM +0000, Will Godfrey wrote: > Thank you both for your suggestions. I tried that bit of code, but as I rather > expected it behaved perfectly. > > The problem seems to be that, for some reason FLTKs 'step' command is being > ignored. Not only is it failing to round the values but it is also failing to > truncate them. I even tried replacing the calculated value with a simple > integer - loads of trailing zeros after the decimal point. > > Yoshi is derived from Zyn, and the section of code that sends values to FLTK > for display is identical, yet Zyn doesn't show this problem. I can only guess > there is some difference in the way yoshi links to FLTK but can't imagine what > it is! I'm noticing a possible bug generator in a diff between `ZynAddSubFX-2.4.3' and `yoshimi-1.1.0': diff -u ZynAddSubFX-2.4.3/src/UI/ADnoteUI.fl \ yoshimi-1.1.0/src/UI/ADnoteUI.fl | grep lrintf + callback {pars->VoicePar[nvoice].PVolume = lrintf(o->value());} + callback {pars->VoicePar[nvoice].Presonance = lrintf(o->value());} [...] !! | wc -l 72 The method `value' of Fl_Valuator returns a "double" and `lrintf' requires "float". The implementation of `lrintf' depends on the machine (for example, in glibc-2.15, it uses the instruction CVTSD2SI for x86_64). You could try `lrint' or the follow trick: http://music.columbia.edu/pipermail/music-dsp/2013-September/071566.html _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user