;* wait subroutine *
wait
movlw time ; load count1 with decimal time
movwf count1
d1 movlw time ; load count2 with decimal time
movwf count2
d2 decfsz count2,same ; decrement F,skip if zero
goto d2 ; if not zero
decfsz count1 ; decrement count1 if count2 is zero
goto d1 ; do inside loop again if count2 nz
retlw 00
; ----------------------------
If you look at the top, there is a
time equ .15 <- decimal 15 or hex 0x0F
The total time of the wait is then about
(256 - 15) x (256 - 15) = 58081 clock steps plus a few more for the routine to work.
Assuming the oscillator is 4Mhz, that gives about 1us a clock so the delay is about 58ms. Remember this is an approximation, DECFSZ uses 1 clock on not zero and 2 clocks on Zero, so you have to add this into the calculation.
The easiest way is to put the subs into MPLAB and run it with stopwatch.
The safest bet is to use about 60ms and try it out. This is a very simple program with very simple effect. Using C for this program would be way overkill and may not give you tight enough timing.