ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (2)      43  DECLARATIONS

   (3)     120  ERRFMT 

   (3)     278  ERRFMT KERNAL MODE INIT

   (3)     303  TIME STAMP ROUTINE

   (3)     332  GET ERROR LOG BUFFER

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   1

X02.0                                                                                                                            (1)



                                     0000     1 	.TITLE	ERRFMT 

                                     0000     2 	.IDENT	/X02.0/

                                     0000     3 

                                     0000     4 ;

                                     0000     5 ; COPYRIGHT (C) 1977,1978

                                     0000     6 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

                                     0000     7 ;

                                     0000     8 ; THIS SOFTWARE IS FURNISHED  UNDER A LICENSE FOR USE ONLY ON A SINGLE

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

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

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

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

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

                                     0000    14 ; REMAIN IN DEC.

                                     0000    15 ;

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

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

                                     0000    18 ; CORPORATION.

                                     0000    19 ;

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

                                     0000    21 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.

                                     0000    22 ;

                                     0000    23 

                                     0000    24 ;++

                                     0000    25 ; FACILITY:  ERROR LOG FORMAT PROGRAM

                                     0000    26 ;

                                     0000    27 ; ABSTRACT:  THIS PROGRAM EMPTIES THE ERROR LOG BUFFERS AND CREATES

                                     0000    28 ;		A FILE, ERRLOG.SYS, IN A FORMAT ACCEPTABLE TO SYE.

                                     0000    29 

                                     0000    30 ;

                                     0000    31 ;

                                     0000    32 ; ENVIRONMENT:

                                     0000    33 ;

                                     0000    34 ; ORIGINAL AUTHOR:  K.D. MORSE, CREATION DATE:  29-JUN-77

                                     0000    35 ; REWRITTEN BY:  W. H. BROWN, 12-JUN-1978

                                     0000    36 ;

                                     0000    37 ; MODIFIED BY:

                                     0000    38 ;

                                     0000    39 ;	, : VERSION

                                     0000    40 ; 01	- 

                                     0000    41 ;--

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   2

X02.0           DECLARATIONS                                                                                                     (2)



                                     0000    43 	.SBTTL	DECLARATIONS

                                     0000    44 ;

                                     0000    45 ; INCLUDE FILES:

                                     0000    46 ;

                                     0000    47 

                                     0000    48 ;

                                     0000    49 ; MACROS:

                                     0000    50 ;

                                     0000    51 ;

                                     0000    52 ; EQUATED SYMBOLS:

                                     0000    53 ;

                                     0000    54 	$PRDEF				; DEFINE PROCESSOR REGISTERS

                                     0000    55 	$DIBDEF				; DEVICE INFORMATION BUFFER

                                     0000    56 	$EMBETDEF			; ERROR MESSAGE ENTRY TYPES

                                     0000    57 	$EMBHDDEF			; ERROR MESSAGE BUFFER HEADER

                                     0000    58 	$EMBTSDEF			; DEFINE TIME STAMP DEFINTIONS

                                     0000    59 	$ERFHDDEF			; ERROR FORMAT HEADER DEFINITIONS

                                     0000    60 	$ERFTSDEF			; ERROR FORMAT TIME STAMP DEFINTIONS

                                     0000    61 	$ERLDEF				; SYSTEM ERROR LOGING DEFINTIONS

                                     0000    62 	$PCBDEF				; PROCESS CONTROL BLOCK DEFINITIONS

                                     0000    63 

                           00000002  0000    64 ERM$C_FORMAT = 2			; FORMAT NUMBER FOR VAX

                           000000FF  0000    65 ERF$C_LOOP_CNT = 255			; TIMES TO WAIT FOR BUFFER

                           00000258  0000    66 ERF$K_DLTA_STMP = <60*10>		; TIME STAMP DELTA IN SECS

                           FF676980  0000    67 ERF$K_CLK_TICK = -<10*1000*1000>	; CONVERSION TO CLOCK TICKS/SEC

                                     0000    68 

                                     0000    69 ;

                                     0000    70 ; OWN STORAGE:

                                     0000    71 ;

                                     0000    72 

                                 00000000    73 	.PSECT	DATA,RD,WRT,NOEXE,PAGE

                                     0000    74 

                           00000200  0000    75 INBUF:	.BLKB	512			; INPUT BUFFER

                                     0200    76 OUTFAB:	$FAB	-			; RECORD ACCESS BLOCK

                                     0200    77 		FAC=<PUT,UPD>,-		; PUT AND UPDATE FILE ACCESS

                                     0200    78 		FNA=OUTNAM,-		; FILE NAME ADDRESS

                                     0200    79 		FNS=OUTNAMSZ,-		; LENGTH OF FILE NAME

                                     0200    80 		ORG=SEQ,-		; SEQUENTIAL ORGANIZATION

                                     0200    81 		MRS=0			; MAX RECORD SIZE UNSPECIFIED

                                     0250    82 

                                     0250    83 OUTRAB:	$RAB	-			; RECORD ACCESS BLOCK

                                     0250    84 		ROP=EOF,-		; OPEN TO END OF FILE

                                     0250    85 		FAB=OUTFAB		; FILE ACCESS BLOCK ADDR

                                     0294    86 

                                 00  0294    87 LASTENTRY:	.BYTE 0			; ENTRY TYPE OF LAST RECORD WRITTEN

                           00000000  0295    88 SID:		.LONG	0		; SYSTEM ID #

                               0000  0299    89 ERF$W_MBXCHN:	.WORD	0		; DIAGNOSTIC MAILBOX CHANNEL

                               0000  029B    90 ERF$W_MBXSIZ:	.WORD	0		; DIAGNOSTIC MAILBOX SIZE

                               0000  029D    91 ERF$W_MBXUNT:	.WORD	0		; PREVIOUS DIAG MBX UNIT #

                                     029F    92  

                                     029F    93 ;

                                     029F    94 ; PURE DATA - KEPT IN CODE PSECT FOR LOCALITY

                                     029F    95 ;

                                     029F    96  

                                 00000000    97 	.PSECT	CODE,RD,NOWRT,EXE

                                     0000    98  

                                     0000    99 ;

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   3

X02.0           DECLARATIONS                                                                                                     (2)



                                     0000   100 ; ARGUMENT LIST FOR FILE CREATE TIME STAMP ENTRY

                                     0000   101 ;

                           00000001  0000   102 FILCRE:		.LONG	1		; ONE ARGUMENT

                           00000023  0004   103 		.LONG	EMB$K_NF	; NEW FILE TYPE MESSAGE

                                     0008   104  

                                     0008   105 ERF$Q_DELTA:				; TIME BETWEEM TIME MARKS

                                     0008   106  

                                     0008   107 ; ***	.LONG	ERF$K_CLK_TICK*ERF$K_DLTA_STMP&^X0FFFFFFFF

                                     0008   108  

                           9A5F4400  0008   109 		.LONG	^X09A5F4400	; LOW 1/2 OF DELTA TIME

                                     000C   110  

                                     000C   111 ; ***	.LONG	ERF$K_CLK_TICK*ERF$K_DLTA_STMP@-32

                                     000C   112  

                           FFFFFFFE  000C   113 		.LONG	^X0FFFFFFFE	; HIGH 1/2 OF DELTA TIME

                                     0010   114  

                           FFB3B4C0  0010   115 ERF$Q_WAIT:	.LONG	-<10*1000*500>	; # OF 10 MILLISEC INTERVALS

                           FFFFFFFF  0014   116 		.LONG	-1		; TO WAIT FOR BUFFER COMPLETION

4C 52 52 45 5D 52 52 45 53 59 53 5B  0018   117 OUTNAM:	.ASCII	\[SYSERR]ERRLOG.SYS\	; OUTPUT FILE NAME

                  53 59 53 2E 47 4F  0024       

                           00000012  002A   118 OUTNAMSZ = . - OUTNAM			; LENGTH OF OUTPUT NAME

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   4

X02.0           ERRFMT                                                                                                           (3)



                                     002A   120 	.SBTTL	ERRFMT 

                                     002A   121 ;++

                                     002A   122 ; FUNCTIONAL DESCRIPTION:

                                     002A   123 ;

                                     002A   124 ;	THIS PROGRAM IS AWAKENED FROM HIBERNATION BY THE ERROR LOGGER

                                     002A   125 ;	WHENEVER AN ERROR LOG BUFFER BECOMES FULL.  THE ERROR FORMAT

                                     002A   126 ;	PROGRAM READS THE FULL BUFFER AND THEN RELEASES IT FOR RE-USE BY

                                     002A   127 ;	THE ERROR LOGGER PROGRAM.  THE DATA JUST READ IS RE-ORGANIZED

                                     002A   128 ;	AND WRITTEN TO A FILE CALLED "ERRLOG.SYS" IN A FORMAT ACCEPTABLE

                                     002A   129 ;	TO SYE.

                                     002A   130 ;

                                     002A   131 ;	THE ERROR FORMAT PROGRAM ALSO PLACES TIME STAMP ENTRIES INTO THE

                                     002A   132 ;	ERROR LOG BUFFER.  THESE TIME STAMPS ARE PLACED INTO THE BUFFER

                                     002A   133 ;	AT REGULAR INTERVALS.  HOWEVER, SEQUENTIAL TIME STAMPS ARE NOT

                                     002A   134 ;	WRITTEN INTO THE FILE, "ERRLOG.SYS".

                                     002A   135 ;

                                     002A   136 ;	THE FILE, "ERRLOG.SYS", IS UPDATED, OR A NEW VERSION CREATED IF

                                     002A   137 ;	THE MOST RECENT VERSION IS BEING ACCESSED OR DOES NOT EXIST.

                                     002A   138 ;

                                     002A   139 ;--

                                     002A   140 

                                 0000002A   141 	.PSECT	CODE,RD,NOWRT,EXE

                                     002A   142 	.ENABL	LSB

                               0000' 002A   143 	.ENTRY	ERF$START,0		;

                                     002C   144 	$CMKRNL_S	W^ERF$INIT	; INITIALIZE THE ERR FORMATER

                                     0039   145 PRCBUF: $CMKRNL_S	W^ERF$GETBUF	; GET THE FULL ERROR LOG BUFFER

            14            50     E8  0046   146 	BLBS	R0,PRCNXT		; BR IF MESSAGE(S) TO PROCESS

                                     0049   147 	$CLOSE	FAB=W^OUTFAB		; CLOSE THE OUTPUT

                                     0054   148 	$HIBER_S			; WAIT FOR SOMETHING TO DO

                          DC     11  005B   149 	BRB	PRCBUF			;

                                     005D   150 ;

                                     005D   151 ; PROCESS NEXT MESSAGE - COME HERE WHEN A BUFFER HAS BEEN COPIED FROM

                                     005D   152 ; THE SYSTEM INTO THE LOCAL BUFFER.  IF THE FILE IS NOT OPEN,

                                     005D   153 ; OPEN THE OUTPUT FILE OR CREATE ONE IF MOST RECENT IS BEING ACCESSED.

                                     005D   154 ;

            58       0000'CF     9E  005D   155 PRCNXT:	MOVAB	W^INBUF,R8		; GET ADDR OF FIRST MSG

         01 A8            68     81  0062   156 	ADDB3	ERL$B_BUSY(R8),ERL$B_MSGCNT(R8),R6 ; GET COUNT OF MESSAGES

                          56         0066       

                          D0     13  0067   157 	BEQL	PRCBUF			; BR IF NO MESSAGES TO PROCESS

            58            0C     C0  0069   158 	ADDL	#ERL$C_LENGTH,R8	; POINT TO START OF MESSAGES

            52       0200'CF     9E  006C   159 	MOVAB	W^OUTFAB,R2		; SET ADDRESS OF FAB

                       02 A2     B5  0071   160 	TSTW	FAB$W_IFI(R2)		; IS THE FILE OPEN?

                          5E     12  0074   161 	BNEQ	NXTMSG			; BR IF ALREADY OPEN

                          53     D4  0076   162 	CLRL	R3			; CLEAR NEW FILE FLAG

                       10 A2     D4  0078   163 	CLRL	FAB$L_ALQ(R2)		; CLEAR ALLOCATION 

                                     007B   164 	$OPEN	FAB=(R2)		; OPEN MOST RECENT VERSION

            0E            50     E8  0084   165 	BLBS	R0,10$			; BRANCH ON SUCCESS

                          53     D6  0087   166 	INCL	R3			; SET NEW FILE CREATED FLAG

                                     0089   167 	$CREATE	FAB=(R2)		; CREATE NEW VERSION

            43            50     E9  0092   168 	BLBC	R0,20$			; BR IF FAILED

            59       0250'CF     9E  0095   169 10$:	MOVAB	W^OUTRAB,R9		; SET ADDRESS OF OUTPUT RAB

                       02 A9     B4  009A   170 	CLRW	RAB$W_ISI(R9)		; PERFORM A FAST DISCONNECT

                                     009D   171 	$CONNECT RAB=(R9)		; CONNECT RAB TO FAB

            2F            50     E9  00A6   172 	BLBC	R0,20$			; BR ON ERROR

            28            53     E9  00A9   173 	BLBC	R3,NXTMSG		; BR IF NO FILE WAS CREATED

            5E            10     C2  00AC   174 	SUBL	#ERF$K_TS_LENGTH,SP	; ALLOCATE A BUFFER

            52            5E     D0  00AF   175 	MOVL	SP,R2			; COPY ADDRESS OF BUFFER

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   5

X02.0           ERRFMT                                                                                                           (3)



         28 A9            52     D0  00B2   176 	MOVL	R2,RAB$L_RBF(R9)	; SET BUFFER ADDRESS IN RAB

         22 A9            10     B0  00B6   177 	MOVW	#ERF$K_TS_LENGTH,RAB$W_RSZ(R9) ; AND SET LENGHT FOR $PUT

                                     00BA   178 	ASSUME	ERF$L_HD_SID	EQ 0	;

            82       0295'CF     D0  00BA   179 	MOVL	W^SID,(R2)+		; STORE SYSTEM ID IN MESSAGE

                                     00BF   180 	ASSUME	ERF$W_HD_ENTRY	EQ 4	;

            82            23     B0  00BF   181 	MOVW	#EMB$K_NF,(R2)+		; SET ENTRY TYPE

                                     00C2   182 	ASSUME	ERF$Q_HD_TIME	EQ 6	;

            82         06 A8     7D  00C2   183 	MOVQ	EMB$Q_HD_TIME(R8),(R2)+	; STORE THE TIME OF FIRST ERROR

                                     00C6   184 	ASSUME	ERF$W_HD_ERRSEQ	EQ 14	;

                          82     B4  00C6   185 	CLRW	(R2)+			; NO ERROR SEQUENCE FOR THIS ENTRY

                                     00C8   186 	$PUT	RAB=(R9)		; WRITE FILE CREATED MARK

            5E            10     C0  00D1   187 	ADDL	#ERF$K_TS_LENGTH,SP	; CLEAR THE STACK

                                     00D4   188 ;

                                     00D4   189 ; PROCESS A MESSAGE IN THE ERROR BUFFER.

                                     00D4   190 ;

                                     00D4   191 ;	R6 = NUMBER OF MESSAGES IN THE BUFFER

                                     00D4   192 ;	R7 = IS USED TO HOLD THE FORMATTED RECORD

                                     00D4   193 ;	R8 = THE START OF THE NEXT MESSAGE IN THE LOCAL BUFFER

                                     00D4   194 ;	R9 = ADDRESS OF THE OUTPUT RAB

                                     00D4   195 ;

                          56     97  00D4   196 NXTMSG:	DECB	R6			; IS THERE ANOTHER MSG?

                          03     18  00D6   197 	BGEQ	30$			; BRANCH TO FORMAT ANOTHER MSG

                          FF5E   31  00D8   198 20$:	BRW	PRCBUF			; TRY FOR ANOTHER BUFFER

                                     00DB   199 	ASSUME	EMB$W_SIZE	EQ 0	;

                                     00DB   200 	ASSUME	EMB$B_VALID	EQ 3	;

                                     00DB   201 	ASSUME	EMB$W_HD_ENTRY	EQ ERF$W_HD_ENTRY

                                     00DB   202 	ASSUME	EMB$Q_HD_TIME	EQ ERF$Q_HD_TIME

                                     00DB   203 	ASSUME	EMB$W_HD_ERRSEQ	EQ ERF$W_HD_ERRSEQ

            51            68     3C  00DB   204 30$:	MOVZWL	(R8),R1			; GET THE SIZE OF THE RECORD

         22 A9            51     B0  00DE   205 	MOVW	R1,RAB$W_RSZ(R9)	; AND SET INTO RAB

         28 A9            68     DE  00E2   206 	MOVAL	(R8),RAB$L_RBF(R9)	; AND THE ADDRESS OF THE BUFFER

                       03 A8     95  00E6   207 	TSTB	EMB$B_VALID(R8)		; IS RECORD VALID?

                          05     12  00E9   208 	BNEQ	40$			; BRANCH ON YES

         04 A8         80 8F     88  00EB   209 	BISB	#ERF$M_HD_INVALD,ERF$W_HD_ENTRY(R8) ; FLAG INVALID BUFFER

            68       0295'CF     D0  00F0   210 40$:	MOVL	W^SID,ERF$L_HD_SID(R8)	; INSERT SYSTEM ID REGISTER VALUE

            57            58     D0  00F5   211 	MOVL	R8,R7			; COPY START OF CURRENT RECORD

            58            51     C0  00F8   212 	ADDL	R1,R8			; ADVANCE TO NEXT RECORD

                                     00FB   213  

                                     00FB   214 	.DSABL	LSB

                                     00FB   215 ;

                                     00FB   216 ; OUTPUT ERROR MESSAGE.  R1=SIZE.

                                     00FB   217 ;

            26       0294'CF     91  00FB   218 MSGOUT:	CMPB	W^LASTENTRY,#EMB$C_TS	; LAST REC = TIME STAMP?

                          22     12  0100   219 	BNEQ	10$			; BRANCH ON NO

            26         04 A7     91  0102   220 	CMPB	ERF$W_HD_ENTRY(R7),#EMB$C_TS ; THIS REC = TIME STAMP?

                          1C     12  0106   221 	BNEQ	10$			; BRANCH ON NO

         1E A9            02     90  0108   222 	MOVB	#RAB$C_RFA,RAB$B_RAC(R9) ; SET RANDOM FILE ACCESS

                                     010C   223 	$FIND	RAB=(R9)		; FIND LAST RECORD WRITTEN

         1E A9            00     90  0115   224 	MOVB	#RAB$C_SEQ,RAB$B_RAC(R9) ; SET TO SEQUENTIAL ACCESS

                                     0119   225 	$UPDATE	RAB=(R9)		; UPDATE LAST RECORD

                          0F     11  0122   226 	BRB	20$			; GO PROCESS NEXT MSG

       0294'CF         04 A7     90  0124   227 10$:	MOVB	ERF$W_HD_ENTRY(R7),W^LASTENTRY ; SAVE MSG ENTRY TYPE

                                     012A   228 	$PUT	RAB=(R9)		; OUTPUT MSG

            50       0299'CF     3C  0133   229 20$:	MOVZWL	W^ERF$W_MBXCHN,R0	; MBX CHANNEL ALREADY?

                          19     13  0138   230 	BEQL	30$			; BRANCH ON NONE

       029D'CF   00000000'GF     B1  013A   231 	CMPW	G^EXE$GQ_ERLMBX,W^ERF$W_MBXUNT ; SAME AS LAST TIME?

                          65     13  0143   232 	BEQL	50$			; YES, GO MAIL THE MSG

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   6

X02.0           ERRFMT                                                                                                           (3)



                                     0145   233 	$DASSGN_S	CHAN=R0		; NO, DEASSIGN OLD CHANNEL

                     0299'CF     B4  014F   234 	CLRW	W^ERF$W_MBXCHN		; CLEAR OLD CHANNEL

            5B            5E     D0  0153   235 30$:	MOVL	SP,R11			; MARK THE STACK

            50   00000000'GF     3C  0156   236 	MOVZWL	G^EXE$GQ_ERLMBX,R0	; GET NEW MAIL BOX UNIT

       029D'CF            50     B0  015D   237 	MOVW	R0,W^ERF$W_MBXUNT	; SET NEW UNIT TO USE

                          75     13  0162   238 	BEQL	60$			; BRANCH ON NONE

            5E            1C     C2  0164   239 	SUBL	#32-4,SP		; ALLOCATE BUFFER IN THE STACK

            52            5E     D0  0167   240 	MOVL	SP,R2			; MARK START OF MAIL BOX UNIT

                 30424D5F 8F     DD  016A   241 	PUSHL	#^A/_MB0/		; SET PROTOTYPE NAME

                          5E     DD  0170   242 	PUSHL	SP			; SET START OF BUFFER

                          6B     10  0172   243 	BSBB	100$			; SET UNIT OF MAILBOX

            52            6E     C3  0174   244 	SUBL3	(SP),R2,-(SP)		; FIND LENGTH OF NAME

                          7E         0177       

            52            5E     D0  0178   245 	MOVL	SP,R2			; SAVE POINTER TO NAME

                                     017B   246 	$ASSIGN_S	DEVNAM=(R2),-	; ASSIGN A CHANNEL TO

                                     017B   247 			CHAN=W^ERF$W_MBXCHN; THE DIAGNOSTIC MAILBOX

            4C            50     E9  018A   248 	BLBC	R0,60$			; SKIP THE QIO IF FAILED

            6E            20     D0  018D   249 	MOVL	#32,(SP)		; RESET LENGTH OF BUFFER

                                     0190   250 	$GETCHN_S	CHAN=W^ERF$W_MBXCHN,-; GET SIZE OF MAILBOX

                                     0190   251 			PRIBUF=(R2)	; I.E., THE MAXIMUM MSG SIZE

       029B'CF         06 A9     B0  01A4   252 	MOVW	DIB$W_DEVBUFSIZ(R9),W^ERF$W_MBXSIZ ; GET MAILBOX SIZE

            50         22 A9     3C  01AA   253 50$:	MOVZWL	RAB$W_RSZ(R9),R0	; GET SIZE OF MESSAGE

       029B'CF            50     B1  01AE   254 	CMPW	R0,W^ERF$W_MBXSIZ	; MSG TOO LARGE?

                          05     1B  01B3   255 	BLEQU	55$			; BRANCH ON OK

            50       029B'CF     B0  01B5   256 	MOVW	W^ERF$W_MBXSIZ,R0	; TRUNCATE MSG

                                     01BA   257 55$:	$QIO_S	CHAN=W^ERF$W_MBXCHN,-	; CHANNEL FOR DIAG MBX

                                     01BA   258 		FUNC=#<IO$_WRITEVBLK!IO$M_NOW>,- ; DONT WAIT FOR SUCCESS

                                     01BA   259 		P1=(R7),-		; ADDR OF ERROR MSG

                                     01BA   260 		P2=R0			; SIZE OF MSG

            5E            5B     D0  01D9   261 60$:	MOVL	R11,SP			; RESET THE STACK

                          FEF5   31  01DC   262 	BRW	NXTMSG			; GO PROCESS NEXT MSG

                                     01DF   263 

                                     01DF   264 ;

                                     01DF   265 ; LOCAL SUBROUTINE TO CONVERT BINARY TO ASCII AND STORE RESULT

                                     01DF   266 ; IN BUFFER POINTED TO BY R2

                                     01DF   267 ;

                                     01DF   268  

                          51     D4  01DF   269 100$:	CLRL	R1			; ZERO HI 1/2 OF QUAD WORD

            50            0A     7B  01E1   270 110$:	EDIV	#10,R0,R0,-(SP)		; GET NEXT DIGIT

            7E            50         01E4       

            6E            30     C0  01E6   271 	ADDL	#^A/0/,(SP)		; FIND THE DIGIT IN ASCII

                          50     D5  01E9   272 	TSTL	R0			; ANY THING LEFT

                          02     13  01EB   273 	BEQL	120$			; BR IF NO MORE TO CONVERT

                          F2     10  01ED   274 	BSBB	110$			; GET NEXT DIGIT

            82            8E     F6  01EF   275 120$:	CVTLB	(SP)+,(R2)+		; STORE A BYTE

                                 05  01F2   276 	RSB				;

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   7

X02.0           ERRFMT KERNAL MODE INIT                                                                                          (3)



                                     01F3   278 	.SBTTL	ERRFMT KERNAL MODE INIT

                                     01F3   279 ;++

                                     01F3   280 ;

                                     01F3   281 ; ERF$INIT - INITIALIZE THE ERROR FORMAT PROGRAM

                                     01F3   282 ;

                                     01F3   283 ; THIS ROUTINE IS ENTERED AT KERNAL MODE TO DELETE A PRVIOUS COPY

                                     01F3   284 ; OF THIS PROCESS IF ONE EXISTS, TEHREBY PERMITTING ONLINE REPLACEMENT

                                     01F3   285 ; OF THE ERROR FORMAT PROGRAM, AS WELL AS EASE OF TESTING. ALSO, THE

                                     01F3   286 ; SYSTEM ID REGISTER IS READ AND SAVED FOR FUTURE REFERNCE.  THE

                                     01F3   287 ; KERNAL MODE TIMER AST FOR TIME STAMPING THE ERROR LOG IS STARTED.

                                     01F3   288 ;--

                                     01F3   289 ;

                                     01F3   290 	.ENABL	LSB

                               000C' 01F3   291 	.ENTRY	ERF$INIT,^M<R2,R3>	;

            52   00000000'EF     DE  01F5   292 	MOVAL	ERL$GL_ERLPID,R2	; GET ADDRESS OF CURRENT PID

            53   00000000'GF     D0  01FC   293 	MOVL	G^SCH$GL_CURPCB,R3	; GET CURRENT PCB

                          62     D5  0203   294 	TSTL	(R2)			; PID EGUAL ZERO?

                          11     13  0205   295 	BEQL	10$			; BR IF YES - NO PREVIOUS ERRFMT

            62         60 A3     D1  0207   296 	CMPL	PCB$L_PID(R3),(R2)	; MAKE SURE IT IS THIS PROCESS

                          0B     13  020B   297 	BEQL	10$			; BR IF SAME PROCESS

                                     020D   298 	$DELPRC_S PIDADR=(R2)		; DELETE OLD ERRFMT

            62         60 A3     D0  0218   299 10$:	MOVL	PCB$L_PID(R3),(R2)	; SET THE PID FOR THIS PROCESS

       0295'CF            3E     DB  021C   300 	MFPR	#PR$_SID,W^SID		; GET SYS ID REGISTER

                          18     11  0221   301 	BRB	30$			;

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   8

X02.0           TIME STAMP ROUTINE                                                                                               (3)



                                     0223   303 	.SBTTL	TIME STAMP ROUTINE

                                     0223   304  

                                     0223   305 ;++

                                     0223   306 ;

                                     0223   307 ; ERF$TIMSTMP - TIME STAMP

                                     0223   308 ;

                                     0223   309 ; THIS ROUTINE IS ENTERED PERIODICALLY TO ENTER A TIME STAMP INTO

                                     0223   310 ; THE ERROR MESSAGE BUFFER.  THEY ARE REMOVED ALONG WITH ANY OTHER

                                     0223   311 ; ENTRIES MADE BY THE MAIN LINE OF THIS PROGRAM.

                                     0223   312 ;

                                     0223   313 ; THIS ROUTINE HAS NO INPUTS AND ONLY OUTPUT IS THE ENTRY OF THE

                                     0223   314 ; TIME STAMP IN THE ERROR LOG BUFFER.  IF A BUFFER CAN NOT BE

                                     0223   315 ; ALLOCATED, THAT TIME STAMP IS LOST.

                                     0223   316 ;--

                                     0223   317 

                               0000' 0223   318 	.ENTRY	ERF$TIMSTMP,0		; TIME STAMP ROUTINE

            51            10     9A  0225   319 	MOVZBL	#EMB$C_TS_LENGTH,R1	; GET LENGTH OF MSG

                 00000000'EF     16  0228   320 	JSB	ERL$ALLOCEMB		; GO GET A MSG BLOCK

            0A            50     E9  022E   321 	BLBC	R0,30$			; BRANCH ON NO BLOCK

         04 A2            26     B0  0231   322 	MOVW	#EMB$K_TS,EMB$W_HD_ENTRY(R2) ; SET ENTRY TYPE

                 00000000'EF     16  0235   323 	JSB	ERL$RELEASEMB		; RELEASE BLOCK

                                     023B   324 30$:	$SETIMR_S	-		; SET A TIMER FOR TIME STAMPS

                                     023B   325 		DAYTIM=ERF$Q_DELTA,-	; TIMER DELTA TIME

                                     023B   326 		ASTADR=ERF$TIMSTMP,-	; THE TIME STAMP ENTRY

                                     023B   327 		REQIDT=#EMB$K_TS	; AST PARAMETER IS MESSAGE TYPE

                                 04  024D   328 	RET

                                     024E   329  

                                     024E   330 	.DSABL	LSB

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page   9

X02.0           GET ERROR LOG BUFFER                                                                                             (3)



                                     024E   332 	.SBTTL	GET ERROR LOG BUFFER

                                     024E   333 ;++

                                     024E   334 ;

                                     024E   335 ; ERF$GETBUF - GET ERROR LOG BUFFER

                                     024E   336 ;

                                     024E   337 ; THIS ROUTINE IS CALLED IN KERNAL MODE TO GET A BUFFER OF ERROR

                                     024E   338 ; MESSAGES FORM THE ERROR LOG FACILITY. IF THE BUFFER HAS BUSY

                                     024E   339 ; MESSAGES, THIS PROCESS WAITS FOR A WHILE.  IF THE MESSAGE DOES

                                     024E   340 ; NOT GO UNBUSY IN A REASONABLE TIME, THE BUFFER IS TAKEN IN ITS

                                     024E   341 ; INDETERMINATE FORM.

                                     024E   342 ;

                                     024E   343 ; RETURN OF R0 = FALSE INDICATES NO BUFFERS WERE READY,

                                     024E   344 ;	TRUE INDICATES A BUFFER WAS OBTAINED.

                                     024E   345 ;--

                               047C' 024E   346 	.ENTRY	ERF$GETBUF,^M<R2,R3,R4,R5,R6,R10>; ENTRY POINT MASK

            5A         FF 8F     9A  0250   347 	MOVZBL	#ERF$C_LOOP_CNT,R10	; SET A LOOP COUNT

            54   00000000'EF     9A  0254   348 10$:	MOVZBL	ERL$GB_BUFPTR,R4	; GET BUFFER POINTER

            56   00000000'EF44   D0  025B   349 	MOVL	ERL$AL_BUFADDR[R4],R6	; GET BUFFER ADDRESS

            51       0000'CF     9E  0263   350 	MOVAB	W^INBUF,R1		; GET ADDR OF STORAGE BUF

                                     0268   351 	SETIPL	S^#IPL$_ASTDEL		; CHANGE PRIORITY LEVEL

            61            66     90  026B   352 	MOVB	(R6),(R1)		; FAULT IN BUFFER PAGES

                                     026E   353 	SETIPL	#^X1F			; CHANGE PRIORITY LEVEL

                          66     95  0271   354 	TSTB	ERL$B_BUSY(R6)		; IS BUFFER CHANGING?

                          23     13  0273   355 	BEQL	30$			; BR IF NO

                          5A     D7  0275   356 	DECL	R10			; IS WAIT TIME UP FOR THIS BUFFER?

                          1F     13  0277   357 	BEQL	30$			; BR IF YES

                                     0279   358 	SETIPL	#0			; CHANGE PRIORITY LEVEL

                                     027C   359 	$SETIMR_S	#2,ERF$Q_WAIT	; WAIT FOR A BIT

                                     028D   360 	$WAITFR_S	#2		; FOR THE MESSAGES TO COMPLETE

                          BC     11  0296   361 	BRB	10$			; GO GET THE BUFFER

            66       0200 8F     28  0298   362 30$:	MOVC3	#512,(R6),(R1)		; COPY BUFFER

                          61         029D       

                          66     B4  029E   363 	CLRW	ERL$B_BUSY(R6)		; CLEAR MESSAGE AND BUSY COUNTS

         08 A6         04 A6     D1  02A0   364 	CMPL	ERL$L_NEXT(R6),ERL$L_END(R6) ; WAS BUFFER FULL?

                          07     12  02A5   365 	BNEQU	50$			; IF NEQU NO

   00000000'EF            01     8C  02A7   366 	XORB	#1,ERL$GB_BUFPTR	; INDICATE NEXT BUFFER TO READ

         04 A6         0C A6     9E  02AE   367 50$:	MOVAB	ERL$C_LENGTH(R6),ERL$L_NEXT(R6) ; SET ALL BUFFER FREE

            50       0001'CF     9A  02B3   368 	MOVZBL	W^INBUF+ERL$B_MSGCNT,R0	; ANY COMPLETED MESSAGES?

                          03     13  02B8   369 	BEQL	60$			; IF EQL NO MESSAGES

            50            01     D0  02BA   370 	MOVL	#1,R0			; SET SUCESSFUL INDICATION

                                     02BD   371 60$:	SETIPL	#0			; CHANGE PRIORITY LEVEL

                                 04  02C0   372 	RET				; RETURN

                                     02C1   373  

                                     02C1   374 	.END	ERF$START

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page  10

SYMBOL TABLE                                                                                                                     (3)



$$.TAB         = 00000250 R     03   EMB$K_LENGTH     00000004            ERL$GL_ERLPID    ********   X   04   

$$.TABEND      = 00000294 R     03   EMB$K_MC       = 00000002            ERL$K_LENGTH     0000000C            

$$.TMP         = 00000100            EMB$K_NF       = 00000023            ERL$L_END        00000008            

$$.TMP1        = 00000001            EMB$K_NM       = 0000002A            ERL$L_NEXT       00000004            

$$.TMP2        = 00000069            EMB$K_OM       = 00000029            ERL$M_LOCK     = 00000001            

$$T1           = 00000001            EMB$K_SA       = 00000005            ERL$M_TIMER    = 00000002            

BIT...         = 00000020            EMB$K_SBC      = 00000028            ERL$RELEASEMB    ********   X   04   

DIB$B_DEVCLASS   00000004            EMB$K_SE       = 00000006            ERL$V_LOCK     = 00000000            

DIB$B_DEVTYPE    00000005            EMB$K_SS       = 00000027            ERL$V_TIMER    = 00000001            

DIB$C_LENGTH     00000024            EMB$K_TS       = 00000026            ERM$C_FORMAT   = 00000002            

DIB$K_LENGTH     00000024            EMB$K_TS_LENGTH  00000010            EXE$GQ_ERLMBX    ********   X   04   

DIB$L_DEVCHAR    00000000            EMB$K_UBC      = 00000070            FAB$B_BID        00000000            

DIB$L_DEVDEPEND  00000008            EMB$K_UI       = 00000061            FAB$B_BKS        0000003E            

DIB$L_OPCNT      0000001C            EMB$K_VD       = 00000041            FAB$B_BLN        00000001            

DIB$L_OWNUIC     00000014            EMB$K_VM       = 00000040            FAB$B_DNS        00000035            

DIB$L_PID        00000010            EMB$K_WS       = 00000024            FAB$B_FAC        00000016            

DIB$W_DEVBUFSIZ  00000006            EMB$Q_HD_TIME    00000006            FAB$B_FNS        00000034            

DIB$W_DEVNAMOFF  0000000E            EMB$Q_TS_TIME    00000006            FAB$B_FSZ        0000003F            

DIB$W_ERRCNT     0000001A            EMB$W_HD_ENTRY   00000004            FAB$B_ORG        0000001D            

DIB$W_RECSIZ     00000022            EMB$W_HD_ERRSEQ  0000000E            FAB$B_RAT        0000001E            

DIB$W_UNIT       0000000C            EMB$W_SIZE       00000000            FAB$B_RFM        0000001F            

DIB$W_VOLNAMOFF  00000020            EMB$W_TS_ENTRY   00000004            FAB$B_RTV        0000001C            

DIB$W_VPROT      00000018            EMB$W_TS_ERRSEQ  0000000E            FAB$B_SHR        00000017            

EMB$B_BUFIND     00000002            ERF$B_HD_DCLASS  00000004            FAB$C_BID      = 00000003            

EMB$B_DEVCLS     00000005            ERF$B_HD_DTYPE   00000005            FAB$C_BLN        00000050            

EMB$B_DEVTYP     00000004            ERF$C_HD_LENGTH  00000010            FAB$C_FIX      = 00000001            

EMB$B_VALID      00000003            ERF$C_LOOP_CNT = 000000FF            FAB$C_HSH      = 00000030            

EMB$C_AW       = 00000007            ERF$C_TS_LENGTH  00000010            FAB$C_IDX      = 00000020            

EMB$C_BE       = 00000004            ERF$GETBUF       0000024E RG    04   FAB$C_MAXRFM   = 00000003            

EMB$C_CR       = 00000025            ERF$INIT         000001F3 RG    04   FAB$C_REL      = 00000010            

EMB$C_CS       = 00000020            ERF$K_CLK_TICK = FF676980            FAB$C_RFM_DFLT = 00000002            

EMB$C_DE       = 00000001            ERF$K_DLTA_STMP= 00000258            FAB$C_SEQ      = 00000000            

EMB$C_DT       = 00000060            ERF$K_HD_LENGTH  00000010            FAB$C_UDF      = 00000000            

EMB$C_HE       = 00000008            ERF$K_TS_LENGTH  00000010            FAB$C_VAR      = 00000002            

EMB$C_LENGTH     00000004            ERF$L_HD_SID     00000000            FAB$C_VFC      = 00000003            

EMB$C_MC       = 00000002            ERF$M_HD_INVALD= 00000080            FAB$K_BLN        00000050            

EMB$C_NF       = 00000023            ERF$M_HD_TYPE  = 0000007F            FAB$L_ALQ        00000010            

EMB$C_NM       = 0000002A            ERF$Q_DELTA      00000008 R     04   FAB$L_CTX        00000018            

EMB$C_OM       = 00000029            ERF$Q_HD_TIME    00000006            FAB$L_DEV        00000040            

EMB$C_SA       = 00000005            ERF$Q_WAIT       00000010 R     04   FAB$L_DNA        00000030            

EMB$C_SBC      = 00000028            ERF$START        0000002A RG    04   FAB$L_FNA        0000002C            

EMB$C_SE       = 00000006            ERF$S_HD_TYPE  = 00000007            FAB$L_FOP        00000004            

EMB$C_SS       = 00000027            ERF$TIMSTMP      00000223 RG    04   FAB$L_JNL        00000020            

EMB$C_TS       = 00000026            ERF$V_HD_INVALD= 00000007            FAB$L_MRN        00000038            

EMB$C_TS_LENGTH  00000010            ERF$V_HD_TYPE  = 00000000            FAB$L_NAM        00000028            

EMB$C_UBC      = 00000070            ERF$W_HD_ENTRY   00000004            FAB$L_SDC        00000044            

EMB$C_UI       = 00000061            ERF$W_HD_ERRSEQ  0000000E            FAB$L_STS        00000008            

EMB$C_VD       = 00000041            ERF$W_MBXCHN     00000299 R     03   FAB$L_STV        0000000C            

EMB$C_VM       = 00000040            ERF$W_MBXSIZ     0000029B R     03   FAB$L_XAB        00000024            

EMB$C_WS       = 00000024            ERF$W_MBXUNT     0000029D R     03   FAB$M_BIO      = 00000020            

EMB$K_AW       = 00000007            ERL$ALLOCEMB     ********   X   04   FAB$M_BLK      = 00000008            

EMB$K_BE       = 00000004            ERL$AL_BUFADDR   ********   X   04   FAB$M_BRO      = 00000040            

EMB$K_CR       = 00000025            ERL$B_BUFIND     00000002            FAB$M_CBT      = 00200000            

EMB$K_CS       = 00000020            ERL$B_BUSY       00000000            FAB$M_CIF      = 02000000            

EMB$K_DE       = 00000001            ERL$B_MSGCNT     00000001            FAB$M_CR       = 00000002            

EMB$K_DT       = 00000060            ERL$C_LENGTH     0000000C            FAB$M_CTG      = 00100000            

EMB$K_HE       = 00000008            ERL$GB_BUFPTR    ********   X   04   FAB$M_DEL      = 00000004            

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page  11

SYMBOL TABLE                                                                                                                     (3)



FAB$M_DFW      = 00000020            FAB$V_EXE      = 00000007            PCB$B_ASTACT     0000000C            

FAB$M_DLT      = 00008000            FAB$V_FTN      = 00000000            PCB$B_ASTEN      0000000D            

FAB$M_DMO      = 00001000            FAB$V_GET      = 00000001            PCB$B_PRI        0000000B            

FAB$M_ESC      = 08000000            FAB$V_INP      = 00000013            PCB$B_PRIB       00000033            

FAB$M_EXE      = 00000080            FAB$V_JNL      = 00000016            PCB$B_TYPE       0000000A            

FAB$M_FTN      = 00000001            FAB$V_KFO      = 0000001E            PCB$B_WEFC       00000032            

FAB$M_GET      = 00000002            FAB$V_MSE      = 00000004            PCB$C_LENGTH     0000007C            

FAB$M_INP      = 00080000            FAB$V_MXV      = 00000001            PCB$K_LENGTH     0000007C            

FAB$M_JNL      = 00400000            FAB$V_NAM      = 00000018            PCB$L_ASTQBL     00000014            

FAB$M_KFO      = 40000000            FAB$V_NEF      = 0000000A            PCB$L_ASTQFL     00000010            

FAB$M_MSE      = 00000010            FAB$V_NFS      = 00000010            PCB$L_EFC2P      00000058            

FAB$M_MXV      = 00000002            FAB$V_NIL      = 00000005            PCB$L_EFC3P      0000005C            

FAB$M_NAM      = 01000000            FAB$V_OFP      = 0000001D            PCB$L_EFCS       00000050            

FAB$M_NEF      = 00000400            FAB$V_ORG      = 00000004            PCB$L_EFCU       00000054            

FAB$M_NFS      = 00010000            FAB$V_POS      = 00000008            PCB$L_EFWM       0000004C            

FAB$M_NIL      = 00000020            FAB$V_PPF      = 00000012            PCB$L_OWNER      0000001C            

FAB$M_OFP      = 20000000            FAB$V_PPF_IND  = 0000000E            PCB$L_PHD        00000064            

FAB$M_POS      = 00000100            FAB$V_PPF_RAT  = 00000006            PCB$L_PHYPCB     00000018            

FAB$M_PPF      = 00040000            FAB$V_PRN      = 00000002            PCB$L_PID        00000060            

FAB$M_PPF_IND  = 00004000            FAB$V_PUT      = 00000000            PCB$L_PQB        0000004C            

FAB$M_PPF_RAT  = 00003FC0            FAB$V_RCK      = 00000017            PCB$L_SQBL       00000004            

FAB$M_PRN      = 00000004            FAB$V_RWC      = 0000000B            PCB$L_SQFL       00000000            

FAB$M_PUT      = 00000001            FAB$V_RWO      = 00000007            PCB$L_STS        00000028            

FAB$M_RCK      = 00800000            FAB$V_SCF      = 0000000E            PCB$L_UIC        00000020            

FAB$M_RWC      = 00000800            FAB$V_SHRDEL   = 00000002            PCB$L_WSSWP      00000024            

FAB$M_RWO      = 00000080            FAB$V_SHRGET   = 00000001            PCB$L_WTIME      0000002C            

FAB$M_SCF      = 00004000            FAB$V_SHRPUT   = 00000000            PCB$T_LNAME      0000006C            

FAB$M_SHRDEL   = 00000004            FAB$V_SHRUPD   = 00000003            PCB$V_ASTPEN   = 00000011            

FAB$M_SHRGET   = 00000002            FAB$V_SPL      = 0000000D            PCB$V_BATCH    = 0000000E            

FAB$M_SHRPUT   = 00000001            FAB$V_SQO      = 00000006            PCB$V_DELPEN   = 00000001            

FAB$M_SHRUPD   = 00000008            FAB$V_SUP      = 00000002            PCB$V_FORCPEN  = 00000002            

FAB$M_SPL      = 00002000            FAB$V_TEF      = 0000001C            PCB$V_HIBER    = 00000013            

FAB$M_SQO      = 00000040            FAB$V_TMD      = 00000004            PCB$V_INQUAN   = 00000003            

FAB$M_SUP      = 00000004            FAB$V_TMP      = 00000003            PCB$V_LOGIN    = 00000014            

FAB$M_TEF      = 10000000            FAB$V_TRN      = 00000004            PCB$V_NETWRK   = 00000015            

FAB$M_TMD      = 00000010            FAB$V_UFM      = 0000001A            PCB$V_NOACNT   = 0000000F            

FAB$M_TMP      = 00000008            FAB$V_UFO      = 00000011            PCB$V_NODELET  = 00000017            

FAB$M_TRN      = 00000010            FAB$V_UPD      = 00000003            PCB$V_PHDRES   = 00000012            

FAB$M_UFM      = 04000000            FAB$V_UPI      = 00000006            PCB$V_PSWAPM   = 00000004            

FAB$M_UFO      = 00020000            FAB$V_WCK      = 00000009            PCB$V_PWRAST   = 00000016            

FAB$M_UPD      = 00000008            FAB$W_BLS        0000003C            PCB$V_RES      = 00000000            

FAB$M_UPI      = 00000040            FAB$W_DEQ        00000014            PCB$V_RESPEN   = 00000005            

FAB$M_WCK      = 00000200            FAB$W_IFI        00000002            PCB$V_SSFEXC   = 00000006            

FAB$S_ORG      = 00000004            FAB$W_MRS        00000036            PCB$V_SSFEXCE  = 00000007            

FAB$S_PPF_RAT  = 00000008            FILCRE           00000000 R     04   PCB$V_SSFEXCS  = 00000008            

FAB$V_BIO      = 00000005            GBL...         = 00000000            PCB$V_SSFEXCU  = 00000009            

FAB$V_BLK      = 00000003            INBUF            00000000 R     03   PCB$V_SSRWAIT  = 0000000A            

FAB$V_BRO      = 00000006            IO$M_NOW         ********   X   04   PCB$V_SUSPEN   = 0000000B            

FAB$V_CBT      = 00000015            IO$_WRITEVBLK    ********   X   04   PCB$V_SWPVBN   = 00000010            

FAB$V_CIF      = 00000019            IPL$_ASTDEL      ********   X   04   PCB$V_WAKEPEN  = 0000000C            

FAB$V_CR       = 00000001            LASTENTRY        00000294 R     03   PCB$V_WALL     = 0000000D            

FAB$V_CTG      = 00000014            MSGOUT           000000FB R     04   PCB$W_APTCNT     00000034            

FAB$V_DEL      = 00000002            NXTMSG           000000D4 R     04   PCB$W_ASTCNT     0000003C            

FAB$V_DFW      = 00000005            OUTFAB           00000200 R     03   PCB$W_BIOCNT     0000003E            

FAB$V_DLT      = 0000000F            OUTNAM           00000018 R     04   PCB$W_BIOLM      00000040            

FAB$V_DMO      = 0000000C            OUTNAMSZ       = 00000012            PCB$W_BYTCNT     00000042            

FAB$V_ESC      = 0000001B            OUTRAB           00000250 R     03   PCB$W_BYTLM      00000068            

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page  12

SYMBOL TABLE                                                                                                                     (3)



PCB$W_DIOCNT     00000044            RAB$B_BLN        00000001            RAB$M_WAT      = 00020000            

PCB$W_DIOLM      00000046            RAB$B_KRF        00000035            RAB$M_WBH      = 00000400            

PCB$W_FILCNT     00000048            RAB$B_KSZ        00000034            RAB$S_PPF_RAT  = 00000008            

PCB$W_GPGCNT     00000038            RAB$B_MBC        00000037            RAB$V_ASY      = 00000000            

PCB$W_GRP        00000022            RAB$B_MBF        00000036            RAB$V_BIO      = 0000000B            

PCB$W_MEM        00000020            RAB$B_PSZ        00000034            RAB$V_CCO      = 0000001F            

PCB$W_MTXCNT     0000000E            RAB$B_RAC        0000001E            RAB$V_CVT      = 0000001A            

PCB$W_PPGCNT     0000003A            RAB$B_ROP1       00000005            RAB$V_EOF      = 00000008            

PCB$W_PRCCNT     0000006A            RAB$B_ROP2       00000006            RAB$V_FDL      = 00000006            

PCB$W_SIZE       00000008            RAB$B_ROP3       00000007            RAB$V_HSH      = 00000007            

PCB$W_STATE      00000030            RAB$B_TMO        0000001F            RAB$V_KGE      = 00000015            

PCB$W_TMBU       00000036            RAB$C_BID      = 00000001            RAB$V_KGT      = 00000016            

PCB$W_TQCNT      0000004A            RAB$C_BLN        00000044            RAB$V_LIM      = 0000000E            

PR$_ACCR       = 00000029            RAB$C_KEY      = 00000001            RAB$V_LOA      = 0000000D            

PR$_ACCS       = 00000028            RAB$C_RFA      = 00000002            RAB$V_LOC      = 00000010            

PR$_ASTLVL     = 00000013            RAB$C_SEQ      = 00000000            RAB$V_MAS      = 00000005            

PR$_ESP        = 00000001            RAB$K_BLN        00000044            RAB$V_NLK      = 00000014            

PR$_ICCS       = 00000018            RAB$L_BKT        00000038            RAB$V_NXR      = 00000017            

PR$_ICR        = 0000001A            RAB$L_CTX        00000018            RAB$V_PMT      = 0000001E            

PR$_IPL        = 00000012            RAB$L_DCT        00000038            RAB$V_PPF_IND  = 0000000E            

PR$_ISP        = 00000004            RAB$L_FAB        0000003C            RAB$V_PPF_RAT  = 00000006            

PR$_KSP        = 00000000            RAB$L_KBF        00000030            RAB$V_PTA      = 0000001D            

PR$_MAPEN      = 00000038            RAB$L_PBF        00000030            RAB$V_RAH      = 00000009            

PR$_NICR       = 00000019            RAB$L_RBF        00000028            RAB$V_RLK      = 00000013            

PR$_P0BR       = 00000008            RAB$L_RFA0       00000010            RAB$V_RNE      = 00000018            

PR$_P0LR       = 00000009            RAB$L_RHB        0000002C            RAB$V_RNF      = 0000001B            

PR$_P1BR       = 0000000A            RAB$L_ROP        00000004            RAB$V_TMO      = 00000019            

PR$_P1LR       = 0000000B            RAB$L_STS        00000008            RAB$V_TPT      = 00000001            

PR$_PCBB       = 00000010            RAB$L_STV        0000000C            RAB$V_UIF      = 00000004            

PR$_PME        = 0000003D            RAB$L_UBF        00000024            RAB$V_ULK      = 00000012            

PR$_RXCS       = 00000020            RAB$M_ASY      = 00000001            RAB$V_WAT      = 00000011            

PR$_RXDB       = 00000021            RAB$M_BIO      = 00000800            RAB$V_WBH      = 0000000A            

PR$_SBIER      = 00000034            RAB$M_CCO      = 80000000            RAB$W_ISI        00000002            

PR$_SBIFS      = 00000030            RAB$M_CVT      = 04000000            RAB$W_RFA        00000010            

PR$_SBIMT      = 00000033            RAB$M_EOF      = 00000100            RAB$W_RFA4       00000014            

PR$_SBIQC      = 00000036            RAB$M_FDL      = 00000040            RAB$W_RSZ        00000022            

PR$_SBIS       = 00000031            RAB$M_HSH      = 00000080            RAB$W_USZ        00000020            

PR$_SBISC      = 00000032            RAB$M_KGE      = 00200000            SCH$GL_CURPCB    ********   X   04   

PR$_SBITA      = 00000035            RAB$M_KGT      = 00400000            SID              00000295 R     03   

PR$_SBR        = 0000000C            RAB$M_LIM      = 00004000            SYS$ASSIGN       ********   X   04   

PR$_SCBB       = 00000011            RAB$M_LOA      = 00002000            SYS$CLOSE        ********  GX   04   

PR$_SID        = 0000003E            RAB$M_LOC      = 00010000            SYS$CMKRNL       ********   X   04   

PR$_SIRR       = 00000014            RAB$M_MAS      = 00000020            SYS$CONNECT      ********  GX   04   

PR$_SISR       = 00000015            RAB$M_NLK      = 00100000            SYS$CREATE       ********  GX   04   

PR$_SLR        = 0000000D            RAB$M_NXR      = 00800000            SYS$DASSGN       ********   X   04   

PR$_SSP        = 00000002            RAB$M_PMT      = 40000000            SYS$DELPRC       ********   X   04   

PR$_TBIA       = 00000039            RAB$M_PPF_IND  = 00004000            SYS$FIND         ********  GX   04   

PR$_TBIS       = 0000003A            RAB$M_PPF_RAT  = 00003FC0            SYS$GETCHN       ********   X   04   

PR$_TODR       = 0000001B            RAB$M_PTA      = 20000000            SYS$HIBER        ********   X   04   

PR$_TXCS       = 00000022            RAB$M_RAH      = 00000200            SYS$OPEN         ********  GX   04   

PR$_TXDB       = 00000023            RAB$M_RLK      = 00080000            SYS$PUT          ********  GX   04   

PR$_USP        = 00000003            RAB$M_RNE      = 01000000            SYS$QIO          ********   X   04   

PR$_WCSA       = 0000002C            RAB$M_RNF      = 08000000            SYS$SETIMR       ********   X   04   

PR$_WCSD       = 0000002D            RAB$M_TMO      = 02000000            SYS$UPDATE       ********  GX   04   

PRCBUF           00000039 R     04   RAB$M_TPT      = 00000002            SYS$WAITFR       ********   X   04   

PRCNXT           0000005D R     04   RAB$M_UIF      = 00000010            

RAB$B_BID        00000000            RAB$M_ULK      = 00040000            

ERRFMT                                                           21-AUG-1978 21:11:37   VAX-11 MACRO X0.3-11               Page  13

PROGRAM SECTION SYNOPSIS                                                                                                         (3)







PROGRAM SECTION SYNOPSIS



.  ABS  .        00000000      00     NOPIC   USR   CON   ABS   LCL NOSHR NOEXE NORD  NOWRT BYTE  

. BLANK .        00000000      01     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD    WRT BYTE  

$ABS$            0000007C      02     NOPIC   USR   CON   ABS   LCL NOSHR   EXE   RD    WRT BYTE  

DATA             0000029F      03     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD    WRT PAGE  

CODE             000002C1      04     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD  NOWRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

7230. BYTES LEFT IN FREE MEMORY POOL.

786. BYTES OF RECLAIMED MEMORY.

OBJ$:ERRFMT,LIS$:ERRFMT/-SP=EXECML$/ML,LIB$:ERRFMT/ML,SRC$:ERRFMT

118 MLB DIR RDS - 1028 GETS TO DEFINE 55 MACROS. 64 INTER. FILE WRITES. 

