Andrew Warren wrote: > > Dudes: > > John Payson accidentally sent the following message to me directly; > I'm forwarding it to the PICLIST. Hey Andy, you for got the one that I inadvertantly sent to you too. But since it turns out that Dmitry, John, and Mike already sent a bunch of the same stuff, I'll avoid repeating... ---------------------------------------- You never cease to amaze me John, but here's a little mod that shaves a cycle: (this is essentially the same as Dmitry's & Mike's post) movlw $01 ;JP's hex. btfsc BITNUM,1 addlw $3 ;Or you could have movlw $4 movwf temp btfsc BITNUM,0 addwf temp,f ; Instead of rlf, do a shift by adding movf temp,w btfsc BITNUM,2 swapf temp,w Or if you wish to keep the result in temp: movlw $01 btfsc BITNUM,1 addlw $3 movwf temp btfsc BITNUM,0 addwf temp,f btfsc BITNUM,2 swapf temp,f 8 cycles. A variation on the Keitz Theme that returns the result in the input variable: movlw b'11111100' addwf BITNUM,W bcf BITNUM,2 incf BITNUM,W btfsc BITNUM,1 iorwf BITNUM,F incf BITNUM,F skpnc swapf BITNUM,F 9 cycles Scott