I created a new application from scratch today, using the demo as a guide.
To save reinventing the wheel, I copied a lot of the LED functions from the demo. I also copied the buttons function, changing the global variables to just use one variable that holds which button was pressed.
On startup (in main, before the never ending loop), I can flash all the star LEDs in whatever way I want to - the demo has nice functions to make the star do pretty things.
Next step was to get the buttons to do things, and that's turning out to be really tricky. I'm trying to set it up such that pressing a button will make it flash the lights in some kind of pattern, using the exact same functions that I was using before the never ending loop. Basically the lights flashing are just a way to show that I have control of the buttons...
But I don't... dang.
For some reason, pressing a button makes some of the green LEDs light up even though I have no code using the green LEDs (other than turning them off at the start).
I added a 2 second delay and a call to pulse() in the main loop, and that works fine, doing the pulse (LEDs flashing on the circles) every 2 seconds. But as soon as I press a button it hangs.
I might have to try setting some breakpoints tomorrow to see what's going on.