hi & thanks for your time problem with my prog. testing using an f84 , but is eventually going to be used in a 12c508 i have a delay & want to toggle 2 o/ps together. they need to turn on & off together to supply enough current for a solid state switch. i don't want one of the pins to blow. one pin will not supply enough current on its own. i don't want to risk it. AT ALL !! ******** PORTB,3 is used for zero crossing ************ originally i had ; ==============toggle outputs ============= tog bsf PORTB,4 ;set PORTB bit 4 high bsf PORTB,5 ;set PORTB bit 5 high MOVLW 0x04 MOVWF togh delh DECFSZ togh GOTO delh bcf PORTB,4 ;set PORTB bit 4 low } bcf PORTB,5 ;set PORTB bit 5 low } MOVLW 0x02 MOVWF togl dell DECFSZ togl GOTO dell BTFSC PORTB,3 ;skip next if 0 , checks for 0 ac cycle GOTO tog RETURN ************ when i change the bsf code to MOVLW b'00110000' MOVWF PORTB it still works ************** when i change the bcf code to MOVLW b'00000000' MOVWF PORTB it still works ***************** i wanted to just use 2 registers " on " to replace the bsf's " off " to replace the bcf's but this won't work !! =======vars===== on equ b'00110000' ;set portb 4 & 5 to 1 off equ b'00000000' ;set portb 4 & 5 to 0 ====prog==== tog MOVF on,PORTB ( to replace bsf's) MOVLW 0x04 MOVWF togh delh DECFSZ togh GOTO delh MOVF off,PORTB (to replace bcf's) MOVLW 0x02 MOVWF togl dell DECFSZ togl GOTO dell BTFSC PORTB,3 ;skip next if 0 , checks for 0 ac cycle GOTO tog RETURN there's no o/p's at all ! i also wanted to use 2 registers for the literals too togh equ 0x04 togl equ 0x02 thanks for your advice glen