The ASM routine assumes that the time variables are in BANK0.
If the program has grown in size, there may be more variables which push i_hour, i_minu, i_sec and i_tic into a different Bank.
Adding BANK0 modifiers to the variable declarations may help, but it's a long shot without knowing the rest of the code.
If the variables are still in BANK0, I see no reason why it shouldn't work with a 16F877A.
Code:i_hour var BYTE BANK0 i_minu var BYTE BANK0 i_sec var BYTE BANK0 i_tic var BYTE BANK0


 
		
		 
			 
			 
			 
					
					

 
 
		

Bookmarks