> From: T. Scott Dattalo snip > These routines will not work on the '5x parts because > of the ADDLW instruction. (but maybe Reggie will fix that) I'll try: BCD_ADD: ;Y = Y + X MOVLW 66 ADDWF X,W ADDWF Y,F MOVLW -60 SKPDC MOVLW -66 SKPC ADDWF Y,F RETLW 0 BCD_MINUS: ;Y = Y - X MOVF X,W SUBWF Y,F MOVLW -6 SKPC MOVLW -66 SKPDC ADDWF Y,F RETLW 0 Sorry, there are no comments :) , it is difficult to explain. Reggie