demotime lokal zu machen, spart Speicher. Versteckt die Variable aber irgendwo in einer funktion. Wenn man jetzt später irgendwann mal die Zeit anpassen will, sucht man sie dann im Code. Aber eine Konstante sollte es werden, denn zur Laufzeit ändert sie sich nicht, da hast du Recht.
last_program lokal zu machen vertehe ich gerade nicht wie das funktionieren soll. Sie speichert das aktive LED-Programm (Programmnumer), was gerade aktiv ist, bevor der Würfel in den Demo-Modus wechselt. Im Demo-Modus werden die gleichen Funktionen genutzt wie im normalen Modus. Das Programm läuft durch die Funktionen. Würde dadurch die Lebenszeit der lokalen Variable enden. Ich könnte mir also nicht "merken" welches LED-Programm vor dem Beginn des Demo-Modus aktiv war und zu diesem "springen" wenn der Demo-Modus durch erkannte Aktivität beendet wird. Vielleicht habe ich ja nur ein Gedankenfehler?