(1) Several times I have needed (wanted) to combine components into a larger component (two motors, for example, three digital pins, etc). Each component may have a DONE output. Is it “safe” to combine all of the outputs with an ANY node to produce a single output? (see example below)
Or should I be handling each DONE pulse separately?
(2) At times I want to modify a patch, but don’t want to “mess up” what is already working. So, I create a “misc” patch and just copy my patch over to it for “safe keeping”. Then I can modify the original as much as I want knowing that I can always start over with the stored copy if necessary. Is that likely to cause any problem when I run or debug the code? (This relates to my next question.)
(3) When you debug a patch, are all of them running “in the background” or is just one patch running, namely the patch on the tab page that you are working on at the moment that you have displayed? In other words, can circuits you have on other patches potentially affect the operation of the patch you are testing even if there is no dependency between them? (did that make sense? - I feel that I should put a “defer” node in there somewhere!)
That should do it for now.
EDIT: It occurred to me that I should probably explain what I think the answers are to these questions.
(1) I think it is safe to combine the DONE outputs because of the “transaction” execution model. All three outputs will be evaluated and then the system will “idle”. I should never have a problem with having one component report that it is DONE when the others are not also DONE.
(2) I don’t think copying to another patch to “archive” my progress will affect other patches because so far it has not caused any problems that I have attributed to that fact.
(3) My guess is that only the patch on the displayed tab is run during a debugging session.