CMS> ANNOTATE TIMECVT.BAS/GENERATION=3
%CMS-S-ANNOTATED, element DISKX:[WORK.CMSLIB]TIMECVT.BAS annotated
This command produces a file named TIMECVT.ANN, which contains
the annotated listing of generation 3 of TIMECVT.BAS. The
contents of TIMECVT.ANN are as follows:
Annotated listing for element TIMECVT.BAS in CMS Library
DISKX:[WORK.CMSLIB] 25-APR-1988 15:50:29
4 15-APR-1988 10:01:55 JAMES "additional error checks"
*3 12-APR-1988 15:49:01 JAMES "add check for invalid delta time"
*2 27-MAR-1988 12:39:58 JAMES "jp - fixed length string required"
*1 25-MAR-1988 15:37:11 JAMES "time conversion program"
Annotated listing for element TIMECVT.BAS in CMS Library
DISKX:[WORK.CMSLIB] 25-APR-1988 15:50:29
1 10 rem Program to compute an absolute time given the
present time
2 rem and a delta time. The result is written to a file.
3
4 20 OPTION TYPE = EXPLICIT
5 DECLARE STRING DELTA_TIME
2 6 MAP (STRING_LEN) STRING ASC_TIME = 80
7 DECLARE LONG RETCODE
8 DIM LONG BINARY_DELTA(1)
9 DIM LONG NOW(1)
10 DIM LONG BINARY_CVT_TIME(1)
11
12 100 EXTERNAL LONG CONSTANT SS$_NORMAL
3 13 EXTERNAL LONG CONSTANT SS$_IVTIME
14 EXTERNAL LONG FUNCTION LIB$ADDX
15 EXTERNAL LONG FUNCTION LIB$SUBX
16 EXTERNAL LONG FUNCTION LIB$INT_OVER
17 EXTERNAL INTEGER FUNCTION SYS$BINTIM (STRING
BY DESC, LONG BY REF)
18 EXTERNAL INTEGER FUNCTION SYS$GETTIM (LONG
BY REF)
19 EXTERNAL INTEGER FUNCTION SYS$ASCTIM (LONG
BY REF, STRING BY DESC, &
20 LONG BY REF,
LONG BY REF)
21 150 LET RETCODE = LIB$INT_OVER(0)
22 PRINT "Input delta time"
23 INPUT DELTA_TIME
24 LET RETCODE = SYS$BINTIM ( DELTA_TIME,
BINARY_DELTA(0) )
3 25 175 IF (RETCODE = SS$_NORMAL) THEN GOTO 200
3 26 ELSE IF RETCODE = SS$_IVTIME THEN &
3 27 PRINT ,"INVALID TIME"
3 28 GOTO DONE
3 29 END IF
3 30 END IF
3 31 200 LET retcode = SYS$GETTIM(NOW(0))
3 32 IF (VAL( DELTA_TIME ) > 0 ) THEN &
33 retcode=LIB$ADDX(NOW(0),BINARY_DELTA (0) ,
BINARY_CVT_TIME(0))
34 END IF
35 LET retcode = SYS$ASCTIM(,ASC_TIME,BINARY_
CVT_TIME(0),)
36 OPEN "TIME.TMP" FOR OUTPUT AS FILE #1
37 PRINT #1,ASC_TIME
38 CLOSE #1
39 32767 Done: END
40
The element's history appears at the beginning of the
file TIMECVT.ANN. The history lists the records of the
transactions that created each of the four generations.
However, because the third generation was annotated (ANNOTATE
TIMECVT.BAS/GENERATION=3), changes made after generation 3
are not shown in the annotated listing. Generation 3 and its
ancestors are marked with an asterisk in the history.
The source file listing shows each line of the file, including
line numbers. The numbers farthest to the left are the
generation numbers in which the line was most recently inserted
or modified; the lines with no generation numbers have not
changed since generation 1. The next column of numbers is
assigned by CMS. The third column of numbers is included in
the program itself.