William Bross wrote: > Hi Peter, > replace : > tris PORT_A > with: > ; set page bit > ; move literal or register value for PORT_A into W > ; move W into TRIS_A register > ; clear page bit Please don't! A *complete* waste of time. Just fix the ERRORLEVEL and use the original code which was designed correctly. Who wants code bloat? > As far as the default destination value, it is just an annoying > reminder of where your result ends up. A default dest of '0' places > the result in the W reg and a default dest of '1' places the result > back into the file register. Ah yes, now I see. OK, I amend my previous suggestion. *DON'T* put ERRORLEVEL -305 in the source file. The include file contains definitions of W and F. *USE THEM* in all file instructions where this reminder occurs. It is explaining to you that a ",F" is missing from each of the instructions, so edit that in. *Never* use the values 0 or 1, you are asking for deep, deep trouble. What's the deepest, deep trouble you can have with your program? Well, in all probability, that problem where you spend hours (days?) looking through a piece of code which you *know* works perfectly because you've worked it through, step by step, hundreds of times, but ... you just forgot each time what the "1" or "0" meant, or just sort of thought that it defaulted to using W. -- Cheers, Paul B.