Jason S wrote : > Thanks for the help. > > As far as using mnemonics, I deliberately didn't because it's > possible the problem is I'm setting them wrong. Hi ! What exactly are you talking about here ? The symbolic register names are set in the device include file !! What are *you* setting ??? > The overall code seemed simpler the way I posted it. It was not. > and I thought that would be more useful in > finding the problem. It was not, it just got harder to read. If you say "GPIO", everyone knows what you are saying. If you say "h'05', most have to pick up the data sheet and check what register that is. Many just hit the delete button. > I do use mnemonics in my code, but in a case like the > question I just asked, is it really better to use them? Yes. There are no case I can think of where numeric constants are better then the symbolic names. (Maybe when debugging the include files themselfs...) So do yourself (and us) a big favour and stick to the symbolic names. The only way this could go wrong, is if there is an error in the supplied device include files. Highly unlikely for a chip that have been out for some time now. Jan-Erik. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.