The centuries and millenia, well that's up to your software to keep track - it ONLY stores 100 years 0-99. On my part, whenever I need to display or print a date, I simply prefix with "20", so 04 becomes 2004, and 99 will become 2099... lets face it, beyond that point it's not going to be our problem.

I don't know what your application is, but an RTC by definition is a REAL-TIME Clock. Even if you're playing with say Jewish Calendar, it'll still apply...

If Year = > 65 then
LCDOut "57",HEX2 Year
else
LCDOut "58",HEX2 Year
endif

If you need to cover say the 100 years from 1950 to 2049, then similarly...

If Year > 49 then
LCDOut "19",HEX2 Year
else
LCDOut "20",HEX2 Year
endif

Both examples assume that Year is still in raw BCD Format.

Spiltting across a century does make sorting records by date-order a little more fiddly.

Chinese is a bit tricky because their year doesn't toggle at midnight on December 31/January 1 so the DS1302 isn't suitable.