Why Loop a Power-Up Chart?


#1

It is my understanding that a “Power-Up chart” should only be run once.

I have come across the following [B]Power-up[/B] chart and trying to figure out original programmers reasoning for looping it. Only thing I can assume is he is continuously trying to enable I/O and perhaps trying to start charts that may have stopped for one reason or another. I did a simulation (without I/O), and found out that Variables are not set to their initial values (after the first scan), during subsequent loops. So starting a chart that is already running seems to have no ill effect. Verified this further by adding a counter block and watching the counts being incremented without its variable being set to its initial value after the first scan.

Does this logic seem normal, or is it not recommended generally to loop a power-up chart?


#2

Hi Skyfox,

Keep in mind that the only reason the powerup chart is special is that it is simply the first chart to run when the controller boots.
That’s it.
In every other way, its just a chart. In fact, other than block 0, it is EXACTLY like every other chart.

If you want to loop it, feel free, just like if you want to loop some of your other charts.
(When I say ‘your’, I know you got this from another programmer, so its not your your, just his your… uh… yeah…)

With regards to what hes doing in there, that’s a whole different subject.
Starting a running chart, your right, it does nothing but waste CPU cycles, so its not recommended, buts not going to break anything.
Simply pounding at your I/O only increases network traffic, so its not harmful either, but not exactly the most elegant way to go about getting your I/O enabled.

I sure hope that there is a pretty solid delay in that chart… adding delays in charts is, well, I have some strong feelings on this aspect, so enough to say, its a really good idea.

Ben