TIMOV.MAC;4/AU/-BF=TIMOV.MAC;3 -2,2,/;HJL053/ .IDENT /03.1/ -29,,/;HJL053/ ; HJL053 ALLOW DD-MMM-YY FORMAT OF TIME SPECIFICATION ; -80,,/;HJL053/ .WORD 0 ;END OF TABLE -100,100,/;HJL053/ ; FORMAT TIM [HH:MM:SS] [MM/DD/YY]![DD-MMM-YY] -110,,/;HJL053/ ; DD-MMM-YY IS OPTIONAL DATE TO SET CALENDAR TO ; DD = 1-31 DAY ; MMM = JAN, FEB, ETC MONTH ; YY = 0-99 YEAR -124,124,/;HJL053/ BEQ 5$ ; YES, DISPLAY CURRENT TIME AND DATE -128,,/;HJL053/ 5$: JMP TIMDIS ; -141,,/;HJL053/ BEQ 35$ ; YES CMPB R2,#'- ; POSSIBLY DIFFERENT FORMAT? -142,,/;HJL053/ ; ; GET DATE IN FORMAT DD-MMM-YY ; BIS #2,TDFLG ; SET FLAG THAT WE ARE SETTING DATE MOV #TIMLMT+20,R5 ; POINT TO DAY LIMITS CALL TMTSTL ; TEST LIMITS BCS 34$ ; ERROR MOV R1,$MPARS+10 ; STORE DAY MOV R0,R3 ; COPY BUFFER POINTER MOV #DAT,R1 ; POINT TO VALID MONTH NAMES CLR R2 ; ZERO MONTH NUMBER 31$: TSTB (R1) ; END OF TABLE? BEQ 33$ ; YES, GOOD MONTH CMPB (R0)+,(R1)+ ; NO, CHECK NEXT CHARACTER BEQ 31$ ; AND LOOP IF GOOD MATCH 32$: TSTB (R1)+ ; END OF MONTH STRING? BNE 32$ ; NO, LOOP MOV R3,R0 ; YES, RESET BUFFER POINTER INC R2 ; UPDATE MONTH INDEX TSTB (R1) ; END OF TABLE BNE 31$ ; NO, LOOP BR 34$ ; ZERO IS END OF MONTH LIST 33$: INC R2 ; INCREMENT MONTH NUMBER MOV R2,$MPARS+6 ; SAVE IT CMPB (R0)+,#'- ; IS TERMINATOR CORRECT? BNE 34$ ; NO, ERROR CALL $CDTB ; YES, GET YEAR MOV #TIMLMT+24,R5 ; GET LIMIT ON YEAR CALL TMTSTL ; TEST LIMIT ON YEAR BCS 34$ ; ERROR MOV R1,$MPARS+12 ; SAVE YEAR CALL $NNBLK ; GET NEXT NON-BLANK BCS TIMSET ; SET TIME DEC R0 ; BACKUP UP TO FIRST NON-BLANK BR 30$ ; LOOP FOR TIME 34$: JMP TIMER1 ; SYNTAX ERROR -146,146,/;HJL053/ 35$: BIS #2,TDFLG ; SET DATE FLAG -242,242,/;HJL053/ ; PRINT OUT DATE AND TIME FORMAT HH:MM:SS DD-MMM-YY /