> counter = tmr1l; /* get the low byte, saves high byte snapshot in TMR1H */ > counter = counter | (tmr1l << 8); /* get high byte and assemble in 16 bit word */ Olin, Good thing you put comments in there - you have some bugs. counter = TMR1L; // Note cap sensitivity counter |= (TMR1H << 8) // Note correct register name, caps >however, the left shift probably compiles to some rather unpleasant code >unless the compiler is clever enough to detect shifts of a constant multiple >of 8 and do the appropriate byte shuffling. It is smart about this. Andy -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics