Top secrets sources NedoPC pentevo

Rev

Rev 291 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?

;
;--------------------------------------
;
.DSEG
MSCOUNTER:      .BYTE   2
.CSEG
;
;--------------------------------------
;
TIMERS_INIT:
;TIMER 3
        LDI     TEMP,(0<<WGM31)|(0<<WGM30)
        OUTPORT TCCR3A,TEMP
        LDI     TEMP,(0<<WGM33)|(1<<WGM32)|(0<<CS32)|(0<<CS31)|(1<<CS30)
        OUTPORT TCCR3B,TEMP

        LDI     TEMP,HIGH(11058)
        OUTPORT OCR3AH,TEMP
        LDI     TEMP,LOW(11058)
        OUTPORT OCR3AL,TEMP
;
        INPORT  TEMP,ETIMSK
        ORI     TEMP,(1<<OCIE3A)
        OUTPORT ETIMSK,TEMP

        RET
;
;--------------------------------------
;
TIM3_COMPA:
        PUSH    TEMP
        IN      TEMP,SREG
        PUSH    TEMP

        LDS     TEMP,MSCOUNTER+0
        SBRC    TEMP,4
        LED_ON
        INC     TEMP
        STS     MSCOUNTER+0,TEMP
        BRNE    TIM3_CMPA_1
        LED_OFF
        LDS     TEMP,MSCOUNTER+1
        INC     TEMP
        STS     MSCOUNTER+1,TEMP
TIM3_CMPA_1:

        POP     TEMP
        OUT     SREG,TEMP
        POP     TEMP
        RETI
;
;--------------------------------------
;in:    W == â ©¬ ©â, ¬á (1..16383)
;       Z == 㪠§ â¥«ì ¢ RAM (¨á¯®«ì§ãîâáï ¤¢  ¡ ©â )
SET_TIMEOUT_MS:
        PUSHX
        CLI
        LDS     XL,MSCOUNTER+0
        LDS     XH,MSCOUNTER+1
        SEI
        ADD     XL,WL
        ADC     XH,WH
        ORI     XH,$80
        ST      Z,XL
        STD     Z+1,XH
        POPX
        RET
;
;--------------------------------------
;in:    Z == 㪠§ â¥«ì ¢ RAM (¨á¯®«ì§ãîâáï ¤¢  ¡ ©â )
;out:   sreg.C - SET == ¢à¥¬ï ¢ëè«®
CHECK_TIMEOUT_MS:
        PUSH    WH
        LDD     WH,Z+1
        SBRS    WH,7
        RJMP    CHKTMS_9
        PUSH    WL
        LD      WL,Z
        PUSHX
        CLI
        LDS     XL,MSCOUNTER+0
        LDS     XH,MSCOUNTER+1
        SEI
        SUB     XL,WL
        SBC     XH,WH
        SBRC    XH,6
        RJMP    CHKTMS_8
        STD     Z+1,NULL
        POPX
        POP     WL
CHKTMS_9:
        POP     WH
        SEC
        RET
CHKTMS_8:
        POPX
        POP     WL
        POP     WH
        CLC
        RET
;
;--------------------------------------
;