Hi all. I'm a bit confused by exactly what MPLAB will let me do with a macro. I have a routine that I use for sending data to a shift register. Now I want to do two separate shift registers (not chained, different pins). So what I'd like to do is define a macro like this: mShiftOut macro _data, _port, _ClockPin, _DataPin, LatchPin If I did that, could I then use the following line within the macro? bsf _port,_ClockPin It seems to assemble, I just don't have my board ready to test it yet. Thanks! Josh -- A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools. -Douglas Adams -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist