> __CONFIG b'11111101110001' 'noob, it would be really helpful if you use more understandable code, like list P = 16F877 include "P16F877.inc" __CONFIG _CP_OFF & _WRT_ENABLE_ON & _HS_OSC & _WDT_OFF & _PWRTE_OFF & _BODEN_OFF & _LVP_OFF & _CPD_OFF & _DEBUG_OFF I doubt if any knows off-hand what your CONFIG does. It could be worked out a bit at a time but, well, you know....... Using the .inc file also means you don't have to do these, or any other, processor definitions STATUS equ 0x83 PORTB equ 0x06 PORTA equ 0x05 ADCON0 equ 0x1F ADCON1 equ 0x9F Typing anything that important is a killer typo just waiting to happen > bcf STATUS,5 ;select banks 0+1 > bcf ADCON0,0 ;disable A/D module > movlw 0x06 > movwf ADCON1 ;set all of PORTA to digital Use banksel. You'll see from that definition above that ADCON1 is in Bank1 (address is between 0x7f and 0x90). What you have done up there is probably not change into Bank1 (depends what was in Status before, and that is not a reliable way to do things) banksel adcon0 ;ADCON0 in Bank0 bcf adcon0,adon ;A2D off banksel adcon1 ;ADCON1 in Bank1 movlw b'00000110' ;PortA as digital movwf adcon1 -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist