;
;         "macros_ngp629.txt" ;   
;
;          
;     ----------------------------
xchwf    macro regs ;;  "   "
      xorwf regs,w ;;   xchwf f ( xchwf <   > )
      xorwf regs,f
      xorwf regs,w
         endm
;
;     ----------------------------
bsw   macro bit ;;  " bsf W,bit "  bit=1   W
      iorlw 1<<bit ;;   bsw bit ( bit =  ()  )
        endm
;
;     ----------------------------
bcw   macro bit ;;  " bcf W,bit "  bit=0   W
      andlw 0xFF-(0xFF&(1<<bit)) ;;   bcw bit ( bit =  ()  )
        endm
;
;     ----------------------------
incw   macro ;;  "   (W)"
      addlw 1 ;;   incw
        endm
;
;     ----------------------------
decw   macro ;;  "   (W)"
      addlw 0xFF ;;   decw
        endm
;
;     ----------------------------
;
tim0 macro tum ;;  -   =(n-1*3)+2  
      local l03, l02, l01
     movlw tum
     movwf cnt2 ;; 0.1938*tum=tim0
     movlw 0xFF
l03
   movwf cnt1 ;; 0.00076*255=0.1938
l02
   movwf cnt0 ;; 0.000001*254*3~0.00076
l01
    decfsz cnt0,f
    goto l01
    decfsz cnt1,f
    goto l02
    decfsz cnt2,f
    goto l03
  endm
;
;     ----------------------------
;