Can anyone tell me why this does not work, I have a 508 configured for int RC osc and int Reset with NO WDT. temp equ 0x1c ;File reg for temp storage ORG 0 ;set start of program to 000 hex movwf OSCCAL start clrf GPIO movlw B'000000' ;set all bits output tris GPIO clrf temp start2 incf temp movf temp,w movwf GPIO goto start2 ;go and do it all again END This gives the expected square wave output on GP0, GP1, GP4, GP5 but there is no outputs on GP2 and GP3. I have come to this simple loop because the main program that I have working in a 508 with XT osc stops working when I try and use the int RC osc. Ken. +-----------------------------+--------------------------------------------+ | Ken Hewitt G8PWC | Email ken@welwyn.demon.co.uk | | /\/\/\/\/\/\/\/\/ | Homepage http://www.welwyn.demon.co.uk | +-----------------------------+--------------------------------------------+