Hi there, Byron. I just tried your technique and it works well. I did have to create=20 a separate macro for setting BSR for manipulating a bit in isolation=20 (I have NO idea of which registers some of the newer bits belong) as=20 shown below: setbsr MACRO target ;register movlb (target >>7) ;get bank bits CURRBANK set ((target >>7) <<7) ; endm setbsrbit MACRO target, bnum ;bit movlb (target >>7) ;get bank bits CURRBANK set ((target >>7) <<7) ; endm #define BB(reg,bit) (reg^CURRBANK),(bit) ;bit in bank 1 #define RB(reg) (reg^CURRBANK) ;reg in bank 1 ;usage is: bcf BB(_SOMEBIT) ;usage is: movwf RB(SOMEREG) I'll try to get some time later today to try out the conditional=20 assembly thing that we were talking about. Many thanks! dwayne --=20 Dwayne Reid Trinity Electronics Systems Ltd Edmonton, AB, CANADA (780) 489-3199 voice (780) 487-6397 fax www.trinity-electronics.com Custom Electronics Design and Manufacturing --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .