> I am using this now, but I am a little dubious, after the first cycle of > 231, the outer loop overflows to 255, firing up the osciliscope. I don't think you meant "overflows to 255". Overflows to 0 or underflows to 255 > d0 > movwf count1 > d1 > movlw 0xE7 ; E7 = 231 decimal > movwf counta ; outer loop - delay 231 cycles > movlw 0x04 ; delay - 4 loops > movwf countb > Delay_0 > > decfsz counta, f > goto $+2 > decfsz countb, f > goto Delay_0 > decfsz count1 ,f > goto d1 AFAICT this section of code, with processor=20MHz, executes in 999.8us. Try it with MPLAB's Stopwatch -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist