Jeremy Cowgar wrote: > but in all of my code I always get a warning from the assembler > stating: > Warning[224] D:\PIC\ASM\FLDCEN2.ASM 53 : Use of this instruction is > not recommended. This is easily and (fairly) permanently fixed. Just edit the PIC16C84.INC file (you *are* using a 16C84 are you not?) to include the following as the fourth line: ERRORLEVEL -224 .. and you'll *never* see that spurious warning message again (unless perhaps you do a re-install of MPLAB and omit to preserve your updated files. Easy and efficient! > [51] CLRF PORTB > [52] MOVLW b'11111111' > [53] TRIS PORTB Works perfectly on all PICs, *including* the new ones such as the 16F87x. > Obviously the TRIS command is what is being complained about, and I > realize that Microchip says that we should not utilize this command, That's in much the same vein as Micro$oft saying you shouldn't use Linux! > but when I program that section of code above how Microchip suggests, > my program acts brain dead, never responding to inputs, never changing > outputs... You forgot to CLEAR RP0 again, that's why! > CLRF PORTB > BSF STATUS, RP0 > MOVLW b'11111111' > MOVWF TRISB BCF STATUS, RP0 Fixed! But you can see your code is now significantly longer. I *really* suggest you use the original code by preference, set the correction into the include file and totally ignore MChip telling you to go chase your tail. -- Cheers, Paul B.