; DELAY EQUATES
CNT           EQU 0X25         ;ADDRESS FOR COUNTER
CNT2          EQU 0X26         ;ADDRESS FOR COUNTER2
CNT3          EQU 0X27         ;ADDRESS FOR COUNTER3
CNT4          EQU 0X28         ;ADDRESS FOR COUNTER4
;*************************************************************
; 1 MICROSECOND DELAY 
;*************************************************************
MDELAY:
MOVWF CNT          ;LOAD DELAY TIME
COUNT: NOP         ;TWO NO OPERATIONS
NOP                ;TO OBTAIN THE DELAY
DECFSZ CNT,1       ;DECREMENT THE COUNTER
GOTO COUNT         ;GOTO COUNT IF NOT FINISHED
RETURN

;*************************************************************
; SECOND DELAY, A DELAY FOR 1 SECOND! 
;*************************************************************
SEC_DELAY:
MOVWF CNT           ;LOAD DELAY TIME IN APPROX SECONDS
LOOP5: MOVLW .42    ;LOAD W WITH .42
MOVWF CNT4          ;AND INTO COUNTER
LOOP4: MOVLW .198   ;LOAD W WITH .198
MOVWF CNT3          ;AND INTO COUNTER
LOOP3: MOVLW .199   ;LOAD W WITH .199
MOVWF CNT2          ;AND INTO COUNTER
LOOP2:
DECFSZ CNT2,1       ;DECREMENT THE COUNTER
GOTO LOOP2          ;GOTO LOOP AGAIN
DECFSZ CNT3,1       ;DECREMENT THE OTHER COUNTER
B LOOP3             ;IF NOT FINISHED, GOTO LOOP AGAIN
DECFSZ CNT4,1       ;DECREMENT THE OTHER COUNTER
B LOOP4             ;IF NOT FINISHED, GOTO LOOP AGAIN
DECFSZ CNT,1        ;DECREMENT THE OTHER COUNTER
B LOOP5             ;IF NOT FINISHED, GOTO LOOP AGAIN
RETURN
END