I’ve just verified that using LABEL definitions for LCD strings saves a lot of memory: around 25% in my case, that will probably mean a whole extra bank of 64 encoder LED rings, in my case.
The slight downside is that the string information is split off into the .ngl file making the information dispersed and less immediately readable/editable.
Now, for those LCD strings that contain conditional labels: I assume that they cannot be nested?
This means that the correct way to format LCD strings is as follows:
Actually it would appear that you can have conditional labels referenced within a LABEL definition.
However, a more pressing issue needs to be solved:
The problem being that the _ value is not being updated_ on the LCD. In the following case it simply displays “PW 0”. The debug log shows the value changing.
It would require a recursive algorithm which increases the “worst case” stack memory consumption dramatically - there isn’t enough RAM available for this.
But this one:
LABEL b1e2 “@(1:9:2) PW %3d”
should work.
I’m surprised that it doesn’t… e.g. the “^std_enc”, “^std_btn”, … labels refer to values as well, and they are working.
Best Regards, Thorsten.
P.S.: as mentioned in another thread, I can’t test this before next week.