Glad your managing to adapt the hardware/code to your needs.
The first word clock I built (code attached) used 3 buttons but I did not like them sticking out so opted for a rotary encoder hidden behind the back panel instead. It's spindle length is set so pressing the back panel will trigger the encoder button. I have only had to adjust the time about twice in the last 18 months so taking the back off to do so is no real problem. I was considering implementing a wireless connection so I could update/adjust over bluetooth or using a radio clock module
. I cannot get GPS time in the house so that was not an option.
The time adjust code should/does light a character to denote what your adjusting but the prompt you have is a good idea.
You have prompt strings defined in PROGMEM but choose to built them in RAM one char at a time Is this an oversight or orphan code?
I'm looking forward to some pictures/video when you finished/happy with your clock.