-+P sr = 44100 kr = 11025 ksmps = 4 giwidth init 800 giheight init 400 gipixelpaletta init 40 FLpanel " ",giwidth,giheight,50,50 givalue FLvalue " ",50,20,giwidth/2,giheight/2 FLsetBox 1,givalue gk1,gih1 FLslider " ",0,1,0,4,-1,10,giheight,0,0 ;gk2,gih2 FLslider " ",0,1,0,4,-1,10,giheight,giwidth-10,0 FLsetVal_i .5,gih1 ;FLsetVal_i .5,gih2 FLsetBox 12, gih1 ;FLsetBox 12, gih2 gih3 FLbox " ",8,1,11,10,gipixelpaletta,giwidth,0 gih4 FLbox " ",8,1,11,10,gipixelpaletta,giwidth-10,0 gih5 FLbox "@circle",1,1,12,1,1,242,102 FLsetColor 128,0,0,gih3 FLsetColor 0,0,128,gih4 FLsetTextColor 100,0,100,gih5 FLpanel_end FLrun instr 1 incr init -1 iold1 init 0 iold2 init iold1 kindexoriz phasor .25,.5 kindexvert phasor .1534,.5 koriz tab kindexoriz,1,1 kvert tab kindexvert,1,1 reset: FLhide gih3 FLhide gih4 ;FLsetVal_i i(kvert)*giheight,gih2 FLsetPosition 0,i(gk1)*giheight-(gipixelpaletta*.5),gih3 FLsetPosition giwidth-10,i(kvert)*giheight-(gipixelpaletta*.5),gih4 iorizzontale init i(koriz)*giwidth iverticale init i(kvert)*giheight iPaletta init i(gk1)*giheight iPallina init iverticale if i(kindexoriz) > iold1 goto salta ;iPaletta init (((iPaletta+(gipixelpaletta*.5) > iPallina) && (iPaletta-(gipixelpaletta*.5) < iPallina)) ? 0 : 1) ;if (((iPaletta+(gipixelpaletta*.5) < iPallina) || (iPaletta-(gipixelpaletta*.5) > iPallina))) goto salta if (((abs(iPaletta+(gipixelpaletta*.5)) < iPallina) || (abs(iPaletta-(gipixelpaletta*.5)) > iPallina))) goto salta call 2,0,.1,440 incr = incr + 1 FLprintk 0, incr,givalue salta: iold1 init i(kindexoriz) FLsetPosition iorizzontale,iverticale,gih5 FLshow gih3 FLshow gih4 reinit reset endin instr 2 timout 0,p3,contin turnoff contin: aenv linseg 0,p3/4,10000,p3/4,10000,p3/2,0 asig oscil aenv,p4,10 out asig endin instr 3 asig oscil 20000,440,10 out asig endin f1 0 1024 7 0 512 1 512 0 f10 0 4096 10 1 i1 0 10000 i3 0 3000 e