TIME	MACRO M1110  21-AUG-78 21:54

TABLE OF CONTENTS



    32-    3	GETTIME	GET DATE AND TIME FROM EXECUTIVE

    32-   70	PRINT TWO DECIMAL DIGITS

TIME	MACRO M1110  21-AUG-78 21:54  PAGE 26





      1						.IDENT	\X03.11\

      2					;

      3					; COPYRIGHT (C) 1977, 1978

      4					; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASSACHUSETTS 01754

      5					;

      6					; THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ON A SINGLE

      7					; COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH THE INCLUSION OF THE

      8					; ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE, OR ANY OTHER COPIES THEREOF,

      9					; MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON

     10					; EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO AGREES TO THESE LICENSE

     11					; TERMS.  TITLE TO AND OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES

     12					; REMAIN IN DEC.

     13					;

     14					; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE

     15					; AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT

     16					; CORPORATION.

     17					;

     18					; DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS

     19					; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.

     20					;

     21

     22					;++

     23					; FACILITY:	VAX-11 MACRO OBJECT MODULE LIBRARY "MAR.OLB"

     24					;

     25					; ABSTRACT:	THIS MODULE IS PART OF THE VAX-11 MACRO ASSEMBLER, ITS DESCRIPTION

     26					;		IS ON THE FOLLOWING PAGE.

     27					;

     28					;

     29					; ENVIRNOMENT:	VAX-11 MACRO RUNS ON ANY VAX-11 WITH COMPATIBILITY MODE, UNDER

     30					;		THE CME (COMPATIBILITY MODE EMULATOR) OF VAX/VMS OR ON A PDP-11

     31					;		WITH EXTENDED INSTRUCTIONS UNDER RSX-11/M.

     32					;

     33					; AUTHOR:	STEVE POULSEN, CREATION DATE:  22-JUL-76

     34					;		DALE A. ROEDGER, 10-JAN-77 - 19-DEC-77

     35					;		DAVE N. CUTLER

     36					;		BENN L. SCHREIBER

     37					;

     38					; MODIFIED BY:

     39					;

     40					;--

     41					.IF NDF $DATA$

TIME	MACRO M1110  21-AUG-78 21:54  PAGE 32





      1						.TITLE	TIME

      2	000000					.PSECT	TIME

      3					.SBTTL	GETTIME	GET DATE AND TIME FROM EXECUTIVE

      4					;

      5					;	GETIME -- PUT DATE AND TIME INTO PAGE HEADER

      6					;

      7

      8						.MCALL	GTIM$

      9

     10	000000				GETIME::

     11	000000					PUSH	#TIMDPB				; POINT TO DPB

     12	000004	104377 				EMT	^O377				; GET TIME PARAMETERS

     13	000006					LET R1		:= #LPTHD1		; LOAD PTR TO HEADER BUFFER

     14	000012					LET R2		:= #SBTLB1		; LOAD PTR TO SUB-HEADER BUFFER

     15	000016					REPEAT THRU R0  := #LPTHDX-LPTHD1	; FILL WITH SPACES

     16	000022					    LET (R1)+	:B= #SPACE		;

     17	000026					    LET (R2)+	:B= #SPACE		;

     18	000032					END;R

     19	000034					LET R3		:= #LPTHD4		; PAGE SPOT

     20	000040					LET (R3)+	:B= #'P

     21	000044					LET (R3)+	:B= #141		; LOWER CASE A

     22	000050					LET (R3)+	:B= #147		; LOWER CASE G

     23	000054					LET (R3)+	:B= #145		; LOWER CASE E

     24	000060					LET (R3)+	:B= #SPACE		; CLEAR PAGE NUMBER FIELD

     25	000064					LET (R3)+	:B= #SPACE		;

     26	000070					LET (R3)+	:B= #SPACE		;

     27	000074					LET (R3)+	:B= #'0			; START WITH PAGE 0

     28	000100					LET R3		:= #DATIME		; DATE/TIME SPOT

     29	000104					LET R2		:= #TIMBUF		; POINT TO TIME PARAMETERS

     30	000110					LET R1		:= G.TISC(R2)		; GET SECONDS

     31	000114					CALL DEC2D				; PRINT 2 DIGITS

     32	000120					LET -(R3)	:B= #':			; WITH A COLON

     33	000124					LET R1		:= G.TIMI(R2)		; GET MINUTES

     34	000130					CALL DEC2D				; PRINT 2 DIGITS

     35	000134					LET -(R3)	:B= #':			; COLON

     36	000140					LET R1		:= G.TIHR(R2)		; HOURS

     37	000144					CALL DEC2D				; PUT IN HEADER

     38	000150					LET -(R3)	:B= #SPACE		; A SPACE

     39	000154					LET R1		:= G.TIYR(R2)		; YEAR

     40	000160					CALL DEC2D				; PUT IN HEADER

     41	000164					LET -(R3)	:B= #'9			;

     42	000170					LET -(R3)	:B= #'1			;

     43	000174					LET R1		:= G.TIMO(R2) L.SHIFT 2 + #MONLST ; POINT TO MONTH

     44	000210					REPEAT THRU R0	:= #4			; 4 CHARS IN MONTH

     45	000214					    LET -(R3)	:B= -(R1)		; COPY MONTH NAME

     46	000216					END

     47	000220					LET -(R3)	:B= #'-			; DASH BEFORE MONTH

     48	000224					LET R1		:= G.TIDA(R2)		; DAY

     49	000230					CALL DEC2D				; PUT IN HEADER

     50	000234					LET DATIPT	:= R3			; SAVE DATE/TIME POINTER

     51	000240					LET R2		:= #VRSION		; GET ADDRESS OF VERSION STR

     52	000244					LET R1		:= #LPTHD3		; ADDRESS IN HDR FOR VERSION

     53	000250					REPEAT THRU R0	:B= (R2)+		; LENGTH OF STRING

     54	000252					    LET (R1)+	:B= (R2)+		; COPY ASSEMBLER NAME

     55	000254					END;R

     56	000256					LET R2		:= #TOCBUF		; ADDRESS OF "TABLE OF CONTENTS"

     57	000262					LET R1		:= #SBTLB1		; SUB-HEADER BUFFER

TIME	MACRO M1110  21-AUG-78 21:54  PAGE 32-1

GETTIME	GET DATE AND TIME FROM EXECUTIVE



     58	000266					REPEAT THRU R0	:B= (R2)+		; LENGTH OF STRING

     59	000270					    LET (R1)+	:B= (R2)+		; COPY STRING

     60	000272					END;R

     61	000274					LET R2		:= #XTITLE		; DEFAULT MODULE NAME STRING

     62	000300					LET R1		:= #LPTHD1		; HEADER BUFFER

     63	000304					REPEAT THRU R0	:B= (R2)+		; LENGTH OF STRING

     64	000306					    LET (R1)+	:B= (R2)+		; COPY TITLE

     65	000310					END;R

     66	000312					LET TITTXT	:= 0			; NO TITLE TEXT

     67

     68	000316				ENDPROCEDURE	GETIME

     69

     70					.SBTTL	PRINT TWO DECIMAL DIGITS

     71					;++

     72					;	DEC2D -- PRINT 2 DECIMAL DIGITS.   NUMBER IS IN R1

     73					;		 R3 IS OUTPUT POINTER.

     74					;--

     75

     76	000320				PROCEDURE	DEC2D

     77

     78	000320					LET R0		:= 0			; CLEAR FOR DIVIDE

     79	000322	071027 	000012 			DIV		#10.,R0			; DIVIDE BY 10

     80	000326					LET R0		:= R0 + #'0		; CONVERT TO ASCII

     81	000332					LET R1		:= R1 + #'0

     82	000336					LET -(R3)	:B= R1			; UNITS DIGIT

     83	000340					LET -(R3)	:B= R0			; TEN'S DIGIT

     84

     85	000342				ENDPROCEDURE	DEC2D

     86

     87	000000					.PSECT	TIMDAT,D,GBL

     88

     89	000000				TIMDPB:	GTIM$	TIMBUF

     90

     91

     92	000004				TIMBUF:	.BLKW	8.				; TIME/DATE BUFFER

     93

     94	000024	   112 	   101 	   116 	MONLST:	.ASCII	\JAN-FEB-MAR-APR-MAY-JUN-JUL-AUG-SEP-OCT-NOV-DEC-\

	000027	   055 	   106 	   105

	000032	   102 	   055 	   115

	000035	   101 	   122 	   055

	000040	   101 	   120 	   122

	000043	   055 	   115 	   101

	000046	   131 	   055 	   112

	000051	   125 	   116 	   055

	000054	   112 	   125 	   114

	000057	   055 	   101 	   125

	000062	   107 	   055 	   123

	000065	   105 	   120 	   055

	000070	   117 	   103 	   124

	000073	   055 	   116 	   117

	000076	   126 	   055 	   104

	000101	   105 	   103 	   055

     95

     96

     97	000104	   021 			TOCBUF:	.BYTE	20$-10$				; LENGTH OF STRING

     98	000105	   124 	   101 	   102 	10$:	.ASCII	\TABLE OF CONTENTS\

	000110	   114 	   105 	   040

TIME	MACRO M1110  21-AUG-78 21:54  PAGE 32-2

PRINT TWO DECIMAL DIGITS



	000113	   117 	   106 	   040

	000116	   103 	   117 	   116

	000121	   124 	   105 	   116

	000124	   124 	   123

     99	000126				20$:

    100

    101					.EVEN

    102		000001 			.END

TIME	MACRO M1110  21-AUG-78 21:54  PAGE 32-3

SYMBOL TABLE



A3    = 000000   	G.TICP= 000016   	M.ARGS= 000016   	SYMLEN= 000011   	TIMBUF  000004R     003

BLNK  = 000040   	G.TICT= 000014   	M.END = 000012   	SYMLIN= 000000   	TIMDPB  000000R     003

B0      000022R     002	G.TIDA= 000004   	M.GETL= 000004   	SYMMAX= 000017   	TITTXT= ****** GX

B1      000214R     002	G.TIHR= 000006   	M.IFLV= 000006   	SYMSEG= 000010   	TOCBUF  000104R     003

B2      000252R     002	G.TIMI= 000010   	M.IFVL= 000010   	SYMVL1= 000004   	TYPS0 = 000006

B3      000270R     002	G.TIMO= 000002   	M.LINK= 000000   	SYMVL2= 000006   	VRSION= ****** GX

B4      000306R     002	G.TISC= 000012   	M.NXTL= 000002   	S.ABS = 004000   	XTITLE= ****** GX

COMMA = 000054   	G.TIYR= 000000   	PSECCH= 000020   	S.ASN = 000200   	$DIDDO= 000000

CR    = 000015   	IIII  = 177777   	PSECOP= 000016   	S.DBG = 002000   	$E$   = 000001

DATIME= ****** GX	LBLS0 = 000004   	PSECV1= 000012   	S.DF  = 100000   	$L    = 000005

DATIPT= ****** GX	LF    = 000012   	PSECV2= 000014   	S.EPT = 000100   	$LL   = 000003

DEC2D   000320RG    002	LFTANG= 000074   	RGTANG= 000076   	S.EXTN= 010000   	$L$   = 000000

E0      000034R     002	LOWCAS= 000140   	RTNVAL=%000000   	S.GLOB= 020000   	$R    = 177777

E1      000220R     002	LPTHDX= ****** GX	R6    =%000006   	S.LOCL= 001000   	$T    = 000000

E2      000256R     002	LPTHD1= ****** GX	R7    =%000007   	S.ODBG= 000040   	$T1   = 000006

E3      000274R     002	LPTHD3= ****** GX	SBTLB1= ****** GX	S.REF = 000400   	$T2   = 000004

E4      000312R     002	LPTHD4= ****** GX	SEMI  = 000073   	S.TKMS= 000377   	$Y$   = 000000

FF    = 000014   	LPTLEN= 000074   	SPACE = 000040   	S.WEAK= 040000   	$Z$   = 000000

GETIME  000000RG    002	MONLST  000024R     003	SYMCHR= 000012   	TAB   = 000011   	$$$OST= 000020

G.TIBA= 000002   	M.ARGC= 000014   	SYMFLA= 000002



. ABS.	000000	   000

      	000000	   001

TIME  	000344	   002

TIMDAT	000126	   003

ERRORS DETECTED:  0



VIRTUAL MEMORY USED:  11992 WORDS  ( 47 PAGES)

DYNAMIC MEMORY:  13332 WORDS  ( 51 PAGES)

ELAPSED TIME:  00:02:13

OBJ$:TIME,LIS$:TIME/-SP=SRC$:MD,COMMON,TIME

