Peter L. Peres wrote: > If you have the code snippet: > > bsf GPIO,I2CBIT > movlw TRIS_PRESET > andlw TRIS_I2COUT > tris GPIO > > then TRIS_PRESET would be something like B'10101' and TRIS_I2COUT > would be B'11110' to turn GPIO,0 to output as I2C data line (SDA). Peter: I meant to say something about this when you originally posted it... There seems little need to waste a cycle performing an "and" on two constants; with TRIS_I2COUT defined as 10100 and TRIS_I2CIN defined as 10101, you could replace your movlw/andlw/tris with: MOVLW TRIS_I2COUT TRIS GPIO -Andy === Andrew Warren - fastfwd@ix.netcom.com === Fast Forward Engineering - San Diego, California === http://www.geocities.com/SiliconValley/2499