

; Bliss-32 7.352	Saturday 22-AUG-1978 03:53:36	DBB3:[DELETE.SRC]DELEMSG.B32;7					Page 1

; Digital Equipment Corporation

;

;	0001	MODULE delemsg (    ! Module for generation of message numbers

;	0002	                    LANGUAGE (BLISS32),

;	0003	                    IDENT = 'X00001'

;	0004	                    ) =

;	0005	BEGIN

;	0006	

;	0007	!

;	0008	! Copyright (c) 1978

;	0009	! Digital Equipment Corporation, Maynard, Massachusetts 01754

;	0010	!

;	0011	! This software is furnished  under a license for use only on a single

;	0012	! computer  system and  may be  copied only with  the inclusion of the

;	0013	! above copyright notice.  This software, or any other copies thereof,

;	0014	! may not be provided or  otherwise made available to any other person

;	0015	! except for use on such system and to one who agrees to these license

;	0016	! terms.  Title to and  ownership of the  software  shall at all times

;	0017	! remain in DEC.

;	0018	!

;	0019	! The information in this software is subject to change without notice

;	0020	! and should  not be construed  as a commitment  by Digital  Equipment

;	0021	! Corporation.

;	0022	!

;	0023	! DEC assumes  no  responsibility  for  the use or  reliability of its

;	0024	! software on equipment which is not supplied by DEC.

;	0025	

;	0026	!++

;	0027	! FACILITY:	DELETE Command

;	0028	!

;	0029	! ABSTRACT:

;	0030	!

;	0031	!	This module contains a routine that generates message numbers for the DELETE utility.

;	0032	!

;	0033	! ENVIRONMENT:

;	0034	!

;	0035	!	VAX/VMS operating system, unprivileged user mode utility,

;	0036	!	operates at non-AST level.

;	0037	!

;	0038	!--

;	0039	!++

;	0040	!

;	0041	! AUTHOR:	Carol Peters,	CREATION DATE:	04 May 1978 10:41

;	0042	!

;	0043	! REVISION HISTORY:

;	0044	!

;	0045	!--



; Bliss-32 7.352	Saturday 22-AUG-1978 03:53:36	DBB3:[DELETE.SRC]DELEMSG.B32;7					Page 2

; Digital Equipment Corporation

;

;	0046	!

;	0047	! Table of contents

;	0048	!

;	0049	

;	0050	FORWARD ROUTINE

;	0051	    del$msg_number;					! DELETE utility error message number generator

;	0052	

;	0053	!

;	0054	! Include files

;	0055	!

;	0056	

;	0057	LIBRARY 'SYS$LIBRARY:STARLET.L32';			! System definitions

;	0058	

;	0059	REQUIRE 'SRC$:DELETE.REQ';				! Common DELETE definitions and macros

;	0147	

;	0148	!

;	0149	! Macros

;	0150	!

;	0151	

;	0152	!

;	0153	! Equated symbols

;	0154	!

;	0155	

;	0156	!

;	0157	! OWN storage

;	0158	!

;	0159	

;	0160	!

;	0161	! External declarations

;	0162	!

;	0163	

;	0164	EXTERNAL

;	0165	    del$cli_status	: BITVECTOR,			! Status word for DELETE utility

;	0166	    del$severe_err	: BLOCK [, BYTE];		! Holds most severe error message encountered



; Bliss-32 7.352	Saturday 22-AUG-1978 03:53:36	DBB3:[DELETE.SRC]DELEMSG.B32;7					Page 3

; Digital Equipment Corporation

;

;	0167	GLOBAL ROUTINE del$msg_number (msg_id) =		! DELETE utility message number generator

;	0168	

;	0169	!++

;	0170	! Functional description

;	0171	!

;	0172	!	This routine adds a phony facility code to the message code so that

;	0173	!	PUTMSG will not consider the message a system message. It also records

;	0174	!	the highest severity message encountered.

;	0175	!

;	0176	! Calling sequence

;	0177	!

;	0178	!	del$msg_number (msg_id.rlu.v)

;	0179	!

;	0180	! Input parameters

;	0181	!

;	0182	!	msg_id	 - Message id

;	0183	!

;	0184	! Implicit inputs

;	0185	!

;	0186	!	DEL$SEVERE_ERR	- Current most severe error id

;	0187	!

;	0188	! Output parameters

;	0189	!

;	0190	!	none

;	0191	!

;	0192	! Implicit outputs

;	0193	!

;	0194	!	DEL$SEVERE_ERR	- Most severe error id may be updated

;	0195	!

;	0196	! Routine value

;	0197	!

;	0198	!	Altered message id

;	0199	!

;	0200	! Side effects

;	0201	!

;	0202	!	none

;	0203	!

;	0204	!--

;	0205	

;	0206	    BEGIN

;	0207	

;	0208	    MAP

;	0209		msg_id		: BLOCK [, BYTE];

;	0210	

;	0211	    LOCAL

;	0212	        new_msg_id	: BLOCK [1];			! Holds altered message ID.

;	0213	

;	0214	!

;	0215	! OR in a phony facility ID with the message code. This causes PUTMSG to

;	0216	! regard the message as a nonsystem message, and to use the prefix passed as

;	0217	! an argument to PUTMSG as the prefix for the output message.

;	0218	!

;	0219	

;	0220	    new_msg_id = .msg_id OR (3 ^ 16);			! Add the facility code. Three is a random

;	0221								! small number. It happens to be CLI's ID.



; Bliss-32 7.352	Saturday 22-AUG-1978 03:53:36	DBB3:[DELETE.SRC]DELEMSG.B32;7					Page 3-1

; Digital Equipment Corporation

;

;	0222	

;	0223	!

;	0224	! Update the "most severe error" if the current error is more severe.

;	0225	!

;	0226	

;	0227	    IF NOT .new_msg_id AND				! If the current message is not a success message and

;	0228		(.del$severe_err OR				! either this is the first error message

;	0229		.new_msg_id [sts$v_severity] GTRU		! or the current message severity

;	0230	        .del$severe_err [sts$v_severity])		! is greater than the previous severity,

;	0231	    THEN

;	0232		del$severe_err = .new_msg_id OR			! update the most severe message id

;	0233					sts$m_inhib_msg;	! and turn on the "suppress message" indicator.

;	0234	

;	0235	!

;	0236	! Return the message id to the caller.

;	0237	!

;	0238	

;	0239	    RETURN .new_msg_id;					! Return the actual message id to the caller.

;	0240	

;	0241	    END;





							    .TITLE  DELEMSG

							    .IDENT  \X00001\



							    .GLOBL  DEL$CLI_RESULT, DEL$CLI_STATUS, DEL$SEVERE_ERR



							    .PSECT  $CODE$,NOWRT,2



					 0800 00000 	    .ENTRY  DEL$MSG_NUMBER, Save R11				      ; 0167

		         5B	0000G  CF  9E 00002 	    MOVAB   DEL$SEVERE_ERR, R11					      ;

	   50	    04   AC 00030000   8F  C9 00007 	    BISL3   #196608, MSG_ID, NEW_MSG_ID				      ; 0220

		         17	       50  E8 00010 	    BLBS    NEW_MSG_ID, 2$					      ; 0227

		         0C	       6B  E8 00013 	    BLBS    DEL$SEVERE_ERR, 1$					      ; 0228

	   6B	         03	       00  EF 00016 	    EXTZV   #0, #3, DEL$SEVERE_ERR, R1				      ; 0229

				       51     0001A									      ;

	   50	         03	       00  ED 0001B 	    CMPZV   #0, #3, NEW_MSG_ID, R1				      ;

				       51     0001F									      ;

				       08  1B 00020 	    BLEQU   2$							      ;

	   6B	         50 10000000   8F  C9 00022 1$:     BISL3   #268435456, NEW_MSG_ID, DEL$SEVERE_ERR		      ; 0232

					   04 0002A 2$:     RET     							      ; 0167



; Routine Size:  43 bytes







; Bliss-32 7.352	Saturday 22-AUG-1978 03:53:36	DBB3:[DELETE.SRC]DELEMSG.B32;7					Page 4

; Digital Equipment Corporation

;

;	0242	END

;	0243	ELUDOM













;				       PSECT SUMMARY

;

;	Name		 Bytes			       Attributes

;

;  $CODE$         	    43  NOWRT,  RD ,  EXE,NOSHR,  LCL,  REL,  CON,NOPIC,ALIGN(2)









;				LIBRARY STATISTICS

;

;					     -------- Symbols --------    Blocks

;	File				     Total    Loaded   Percent      Read

;

;  DBA4:[SYSLIB]STARLET.L32;1		      2688        21         0       117

;  DBB3:[DELETE.SRC]VMSMAC.L32;1	         6         3        50         4











; Size:		43 code + 0 data bytes

; Run Time:	00:03.8

; Elapsed Time:	00:07.8

; Memory Used:	130 pages

; Compilation Complete

