Hi, Shahid

You're so right not to move to other Pics ... I tried some times ago from a 16C54 to a 16F84 ... ( was a " Berliner clock " !!! )

Result was not that !!! The differences between program counters and adressing make things really tricky ... possible to do, but very high upon my Pic's knowledge !!!

One thing about your program, I didn't tell you anything about PM and AM ...

if you want to use the alarm function, you'll have to add a flag for that ... look carefully at the digit overflows section : there are lines where hours units are cleared after hours tenths overflow : just toggle your flag here !!!
Of course, add a flag check to digits check for alarm raising ...

Alain