Hi, Coincidence that I checked this forum tonight...
I haven't checked, but if I remember correctly, there are no spare IO pins left on the pic.
This is probably the most readable code I've ever written as it was intended for "Human consumption"
It's free for anyone to do what they want with, but my time is certainly not.
If I were to revisit this project now, it would def be a priority to include a real time clock as long as it's
interrupt code doesn't visibly affect the display.

Nice work aberco
What are the code modifications you want to do? (out of interest)...

One simple change that would also require hardware modification:
I should have addressed leds across the opposite axis to make all leds brighter for free.
Rather than addressing 18 rows and only lighting 8 leds at a time,
I could have addressed 8 rows, and lit 18 leds at a time.
Simple change, but would require a new board and software change.

bushprogrammer (at) gmail dot com