system logg global key keyp start tshift tstart flow fshift imsynk gr[256] logspace[4096] exec logga draw sendim keyread keycontrol process logga ts = 80000000/2000 itlim = 4096 it t100ms = 80000000/10 begin init_analog 2 [col.show] :loop start ? ={>loop} t100ms wait 0 ->start 0 [col.show] #logspace itlim ts [log] 2 [col.show] >loop function log -log begin initlogg :loop 0 analog 4 << logg #{>loop} return load from(col.myo) *col.show \ ------------------------------------------ process draw begin 5 ->tshift 0 ->tstart 0 ->fshift 0 ->flow :loop imsynk ? #{>loop} [gr.clear] [gr.loggshow] 1 ->imsynk >loop load from(graf.myo) *gr.clear *gr.drawcorners *gr.loggshow \ ----------------------------------- process sendim begin 23 [gr.initsend] :loop imsynk ? ={>loop} [gr.sendgraf] 0 ->imsynk >loop load from(graf.myo) *gr.initsend *gr.sendgraf \ ------------------------------------- process keyread begin [key.init] :loop [key.scan] >loop load from(key.myo) *key.init *key.scan \ --------------------------------------- process keycontrol jkeya jkeyp itlim = 4095 tps = 1000000 begin 5 ->tshift 0 ->tstart 0 ->fshift 0 ->flow :loop [key.ascii] ->jkeya jkeya "F" - ? ={tstart 1 tshift << + ->tstart} jkeya "B" - ? ={tstart 1 tshift << - ->tstart} tstart ? <{0 ->tstart} tstart itlim - ? >{itlim ->tstart} jkeya "U" - ? ={flow 256 fshift >> + ->flow} jkeya "D" - ? ={flow 256 fshift >> - ->flow} flow ? <{0 ->flow} jkeyp ? #{>cont} jkeya "I" - ? ={tshift 1 - ->tshift} jkeya "O" - ? ={tshift 1 + ->tshift} tshift ? <{0 ->tshift} tshift 5 - ? >{5 ->tshift} jkeya "N" - ? ={fshift 1 + ->fshift} jkeya "M" - ? ={fshift 1 - ->fshift} fshift ? <{0 ->fshift} jkeya "G" - ? ={1 ->start} :cont tps wait jkeya ->jkeyp >loop load from(key.myo) *key.ascii \