|
DataMuseum.dkPresents historical artifacts from the history of: Zilog MCZ Floppy Disks |
This is an automatic "excavation" of a thematic subset of
Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 2466 (0x9a2) Types: TextFile Names: »TIMER.S«
└─⟦31b8a9b6a⟧ Bits:30005199 8" Zilog MCZ/1 Floppy CR80FD_0025 ( TC 500 SEC. PROTOCOL BB V2 830407 NCJ ) └─⟦this⟧ »TIMER.S« └─⟦cf416a62a⟧ Bits:30005201 8" Zilog MCZ/1 Floppy CR80FD_0027 ( TC 500 SEC. PROTOCOL BACK UP! (V2) BB SEC 821119 NCJ ) └─⟦this⟧ »TIMER.S«
;***************************************************************************** ;* ;* TIMER MODULE ;* ;***************************************************************************** LTUCOUNTER EQU 4000H LIASTA EQU 4001H PIO1 EQU 70H EXTERNAL RCT1CH,RCT2CH,RCT3CH,RCT4CH EXTERNAL NTIME1,NTIME2,NTIME3,NTIME4 EXTERNAL STIME1,STIME2,STIME3,STIME4 GLOBAL TIMER GLOBAL LAT1CH,LAT2CH,LAT3CH,LAT4CH LAT1CH DEFW 0000H LAT2CH DEFW 0000H LAT3CH DEFW 0000H LAT4CH DEFW 0000H ;ECHO \f ;*************************************************************************** ;* TIMER INTERRUPT ROUTINE ;*************************************************************************** TIMER EX AF,AF' EXX CALL TIMCON LD HL,(NTIME1) LD A,L OR H JR Z,TIM01 DEC HL LD (NTIME1),HL TIM01: LD HL,(NTIME2) LD A,L OR H JR Z,TIM02 DEC HL LD (NTIME2),HL TIM02: LD HL,(NTIME3) LD A,L OR H JR Z,TIM03 DEC HL LD (NTIME3),HL TIM03: LD HL,(NTIME4) LD A,L OR H JR Z,TIM04 DEC HL LD (NTIME4),HL TIM04: LD HL,(STIME1) INC HL RES 5,H LD (STIME1),HL LD HL,(STIME2) INC HL RES 5,H LD (STIME2),HL LD HL,(STIME3) INC HL RES 5,H LD (STIME3),HL LD HL,(STIME4) INC HL RES 5,H LD (STIME4),HL LD A,(RCT1CH) AND A JR Z,TIM05 DEC A LD (RCT1CH),A TIM05: LD A,(RCT2CH) AND A JR Z,TIM06 DEC A LD (RCT2CH),A TIM06: LD A,(RCT3CH) AND A JR Z,TIM07 DEC A LD (RCT3CH),A TIM07: LD A,(RCT4CH) AND A JR Z,TIM08 DEC A LD (RCT4CH),A TIM08: LD HL,(LAT1CH) LD A,L OR H JR Z,TIM09 DEC HL LD (LAT1CH),HL TIM09: LD HL,(LAT2CH) LD A,L OR H JR Z,TIM10 DEC HL LD (LAT2CH),HL TIM10: LD HL,(LAT3CH) LD A,L OR H JR Z,TIM11 DEC HL LD (LAT3CH),HL TIM11: LD HL,(LAT4CH) LD A,L OR H JR Z,TIM12 DEC HL LD (LAT4CH),HL TIM12: CALL LIA_STATUS LD HL,LTUCOUNTER INC (HL) EXX EX AF,AF' EI RETI ;ECHO \f EXTERNAL TIM1STA,TIM2STA,TIM3STA,TIM4STA ; NOTE !! THE ADDRESSES OF TIMXSTA,TIMXVAL,TIMXOUT HAS TO BE CONSECUTIVE TIMCON LD HL,TIM1STA CALL TIMCHK LD HL,TIM2STA CALL TIMCHK LD HL,TIM3STA CALL TIMCHK LD HL,TIM4STA CALL TIMCHK RET TIMCHK LD A,1 CP (HL) RET NZ ;IF TIMER CHANNEL ENABLED THEN INC HL ; INC (HL) ; INCREMENT CURRENT TIMER VALUE RET NZ ; IF CURRENT TIMER VALUE = MAX.VALUE (100H) THEN INC HL ; LD (HL),A ; SET TIMEOUT INDICATOR RET ; FI ;FI LIA_STATUS LD C,PIO1+2 LD HL,LIASTA IN A,(C) BIT 1,A JR NZ,LIASET RES 0,(HL) RET LIASET SET 0,(HL) RET ;ECHO \f