From: Brian Tillman [Tillman@sparkingwire.com] Sent: Monday, May 05, 2003 4:22 PM To: Info-VAX@Mvb.Saic.Com Subject: Re: [OpenVMS Alpha] How to get image version in DCL ? >I dare say this won't work on an Alpha. OK, then, here: .TITLE READ_HEADER - Read Image Header .IDENT /1-001/ ; This subroutine returns the image identification and link time. ; ; Format: ; ; status.wlc.v = READ_HEADER( ident.wt.ds [,time.wt.ds] ) ; ; Parameters: ; ; ident The image identification text. ; ; time The image link time (text format). ; Date By Comments ; 4/10/87 D.E. Greenwood Originally written by John Miano, 24-June-1986 - ; obtained from April 87 DECUS L&T Sig Newsletter .LIBRARY "SYS$LIBRARY:LIB" $DSCDEF $EIHDDEF $EIHIDEF $SSDEF ; Argument pointer offsets $OFFSET 4,POSITIVE, .PSECT READ_HEADER, RD, NOWRT, EXE, LONG .ENTRY READ_HEADER, ^M< R2, R3, R4, R5, R6, R7, R8, R11 > CMPL (AP),#1 ; Make sure that there is at least BGEQ ENOUGH_ARGUMENTS ; one argument to this routine MOVL #SS$_INSFARG, R0 RET ENOUGH_ARGUMENTS: ; Get the identification of the image. MOVL @#CTL$GL_IMGHDRBF, R11 ; R11 - Address of image buffer MOVL (R11), R6 ; R6 - Address of image header MOVL EIHD$L_IMGIDOFF(R6), R7 MOVAB (R6)[R7], R7 ; R7 - Address of ID Block CVTBL EIHI$T_IMGID(R7),R0 ; Length of the ID string MOVL IDENT(AP), R8 MOVC5 R0, (R7), #32, - DSC$W_LENGTH(R8), @DSC$A_POINTER(R8) CMPL (AP), #2 BGEQ RETURN_TIME MOVZBL #1, R0 RET RETURN_TIME: ; Get the time the image was linked and convert it to ASCII $ASCTIM_S - TIMBUF=@TIME(AP), - TIMADR=EIHI$Q_LINKTIME(R7) RET .END