this should probably be all moved to a new topic… 
(perhaps time for a norns:supercollider/crone topic?)
heres what I found when I started to mess with SC a bit on norns.
(someone feel free to correct me if Ive got this wrong/incorrect)
No…for a couple of reasons… but main ones are, maiden doesn’t know SC format, you can’t place files where they need to go, and it would need to restart crone/scsynth.
what maiden does provide is a way of seeing SC errors on the sc tab.
anyway some random findings:
-
Engines need to be placed in ~/dust/lib/sc
how you edit these (i.e. editor choice, and locally or remotely , is up to you
)
(not sure if sub directories are allowed, could get crowded in one directory)
-
Crone (and I think matron) need to be restarted to add new engines (and edits)
on the norns box, this is
~/norns/stop.sh ; ~/norns/start.sh
-
Errors (debugging etc)
if you have an error in your SC , you’ll be able to see this in the sc tab of maiden.
however, I found when I accidentally forgot to rename the Engine, this cause crone(actually scsynth) to fail to start… so I got audio engine failed to load … so I guess there are a class of errors when this might happen.
(to ‘debug’ these I found the easiest way was to just run sclang, and see what errors it threw up)
(hopefully over time the above ‘workflow’ could be refined a bit… currently, I found I just left an ssh logged into norns to do this all, but would nice if this could all be done via maiden)
apart from that, creating engines from existing SC code, should not be too difficult
basically the process is, create a new ‘Engine’ derived off CroneEngine, this can ‘wrap’ the existing code.
this wrapper does a few things… sets the in/out contexts, allows you to ‘addCommands’ which are what you map to parameters on the lua side.
Its also a good idea to check out a few of the Engine SC classes , as they all seem to do things slightly different.
I guess perhaps due to when they were written and by who… but I find it a bit confusing
e.g. I see a few calling synthdef() .add() , but some do CroneDefs.add(synthdef)
perhaps ‘best practices’ will become clearer during the studies.
that said my SC is rusty, so perhaps when Im more back in the flow with it, it’ll become clearer.