Recently I needed to subtract a two byte literal and came up with the following. It seems a little cumbersome. Anybody have something better? Shorter? ;Subtract two byte literal. ;At exit, C = 0 if result is negative ;Usage example: sub_word_literal Buff, h'1234' sub_word_literal: macro aaa, lll movlw low (~lll + 1) addwf aaa+1, f movlw high (~lll + 1) skpnc addlw 1 skpz addwf aaa, f endm -- Bob Fehrenbach Wauwatosa, WI bfehrenb@execpc.com