QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (2)      39  DECLARATIONS

   (3)     227  QUEUE MANAGER UTILITY

   (5)     389  QUALIFIER ACTION ROUTINES

   (5)     580  COMMAND PARSE ERROR HANDLER

   (5)     618  EXECUTION ERROR

   (5)     646  SHOW MESSAGE

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   1

V01                                                                                                                              (1)



                                     0000     1 	.TITLE	QUEMAN - QUEUE MANAGER UTILITY

                                     0000     2 	.IDENT	/V01/

                                     0000     3 

                                     0000     4 ;

                                     0000     5 ;		  COPYRIGHT (c) 1977,1978 BY

                                     0000     6 ;	      DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

                                     0000     7 ;

                                     0000     8 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE ANY MAY BE USED AND  COPIED

                                     0000     9 ; ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH  LICENSE AND WITH THE

                                     0000    10 ; INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR  ANY  OTHER

                                     0000    11 ; COPIES  THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY

                                     0000    12 ; OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF  THE  SOFTWARE  IS  HEREBY

                                     0000    13 ; TRANSFERRED.

                                     0000    14 ;

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

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

                                     0000    17 ; CORPORATION.

                                     0000    18 ;

                                     0000    19 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR  RELIABILITY  OF  ITS

                                     0000    20 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.

                                     0000    21 ;

                                     0000    22 

                                     0000    23 ;++

                                     0000    24 ; FACILITY:	CLI UTILITY PROGRAMS

                                     0000    25 ;

                                     0000    26 ; ABSTRACT:	INIT,START,STOP AND DELETE JOB CONTROLLER QUEUES

                                     0000    27 ;

                                     0000    28 ;

                                     0000    29 ; ENVIRONMENT:	NATIVE/USER MODE NON-PRIVILEGED CODE

                                     0000    30 ;

                                     0000    31 ; AUTHOR:	W.H.BROWN, CREATION DATE: 21-SEP-1977

                                     0000    32 ;

                                     0000    33 ; MODIFIED BY:

                                     0000    34 ;

                                     0000    35 ;	, : VERSION

                                     0000    36 ; 01	- 

                                     0000    37 ;--

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   2

V01             DECLARATIONS                                                                                                     (2)



                                     0000    39 	.SBTTL	DECLARATIONS

                                     0000    40 ;

                                     0000    41 ; INCLUDED FILES:

                                     0000    42 ;

                                     0000    43 ; MACROS:

                                     0000    44 ;

                                     0000    45 ; MACRO TO SET AN OPTION INTO THE MESSAGE

                                     0000    46 ;

                                     0000    47 	.MACRO	SETOPT	VAL,TYPE=B

                                     0000    48 	BSB'TYPE	QMN_SETOPT

                                     0000    49 	.BYTE	SMO$K_'VAL

                                     0000    50 	.ENDM

                                     0000    51 

                                     0000    52 ;

                                     0000    53 ; MACRO TO SET AN OPTION INTO THE MESSAGE THAT MUST BE EXPLICITLY STATED

                                     0000    54 ;

                                     0000    55 	.MACRO	SETEXPOPT  VAL,TYPE=B

                                     0000    56 	BSB'TYPE	QMN_SETEXPOPT

                                     0000    57 	.BYTE	SMO$K_'VAL

                                     0000    58 	.ENDM

                                     0000    59  

                                     0000    60 ;

                                     0000    61 ; EQUATED SYMBOLS:

                                     0000    62 ;

                                     0000    63 ; MACRO LIBRARY CALLS

                                     0000    64 ;

                                     0000    65 	$CLIDEF				; CLI DEFINITIONS

                                     0000    66 	$CLIVERBDEF			; VERB CODES

                                     0000    67 	$STSDEF				; STATUS LONGWORD VALUES

                                     0000    68 	$MSGDEF				; SYSTEM MESSAGE CODES

                                     0000    69 	$SMRDEF				; SYMBIONT MANAGER REQUESTS

                                     0000    70 	$CLIMSGDEF			; CLI MESSAGES

                                     0000    71 	.MACRO	$CLIMSGDEF

                                     0000    72 	.ENDM

                                     0000    73 	QMNBITS				; DEFINE QUEUE MANAGER BITS

                           00000084  0000    74 	LINBUFSIZ = 132			; LINE BUFFER DIMENSION

                                     0000    75 ;

                                     0000    76 ; OWN STORAGE:

                                     0000    77 ;

                                     0000    78 	IMPURE_DATA

                                     0000    79  

                                     0000    80 ;

                                     0000    81 ; RMS 32 DATA STRUCTURES

                                     0000    82 ;

                                     0000    83  

                                     0000    84 ERRRAB:	$RAB	RAC=SEQ,-		; SEQUENTIAL ACCESS TO FILE

                                     0000    85 		UBF=LINBUF,-		; RECORD BUFFER IF NEEDED

                                     0000    86 		USZ=LINBUFSIZ		; MAXIMUM NUMBER OF BYTES TO MOVE

                                     0044    87  

                                     0044    88 ;

                                     0044    89 ; GENERATE A LOCAL CONTEX BLOCK FOR THE IMAGE

                                     0044    90 ;

                                     0044    91  

                                     0044    92 ;

                                     0044    93 ; MACRO TO GENERATE LOCAL CONTEX FOR QUEMAN

                                     0044    94 ;

                                     0044    95  

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   3

V01             DECLARATIONS                                                                                                     (2)



                                     0044    96     DEF_CTXBLK	QMN$CTXBLK,ALLOCATE=YES ; DEFINE START OF CONTEXT BLOCK

                                     0044    97 	DEF_ELE	QMN_W_FLAGS,W		; FLAGS WORD

                                     0046    98 	DEF_ELE	QMN_W_RSPCHAN,W		; CHANNEL FOR MAILBOX RESPONCES

                                     0048    99 	DEF_ELE	QMN_L_STATUS,L,1,1	; SAVE AREA FOR FINAL STATUS

                                     004C   100 	DEF_ELE	QMN_L_MSGPTR		; POINTER TO NEXT BYTE IN MESSAGE

                                     0050   101 	DEF_TAG	QMN_Q_BUFDES,Q		; BUFFER DESCRIPTOR

                                     0050   102 	DEF_ELE	QMN_W_BUFCNT,W		; BUFFER COUNT WORD

                                     0052   103 	DEF_ELE	QMN_W_BUFSIZ,W,1,LINBUFSIZ ; SIZE KEPT IN SPARE WORD

                                     0054   104 	DEF_ELE	QMN_A_BUFADR,A,1,LINBUF	; ADDRESS OF BUFFER

                                     0058   105 	DEF_ELE	QMN_Q_IOSB,Q		; IO STATUS BLOCK

                                     0060   106 	DEF_ELE	QMN_B_CMDTYP,B		; COMMAND TYPE BYTE

                                     0061   107 	DEF_ELE	QMN_T_SPARE,B,3		; 3 SPARE BYTES

                                     0064   108     DEF_CTXEND

                                     0064   109 ;

                                     0064   110  

                           000000E8  0064   111 LINBUF:	.BLKB	LINBUFSIZ		; THE LINE BUFFER

                                     00E8   112 ;

                                     00E8   113 ; DEFINE CALL BACK DATA STRUCTURES

                                     00E8   114 ;

                                     00E8   115  

                           00000044' 00E8   116 CLIWORK:.LONG	QMN$CTXBLK		; SET USER CONTEX LONGWORD

                           00000168  00EC   117 	.BLKB	CLI$C_WORKAREA-4	; RESULT PARSE WORK AREA

                                     0168   118  

                           0000016C  0168   119 BITMAP:	.BLKL	1			; BIT MASK AREA

                                     016C   120  

                                     016C   121 INITPRS:$CLIREQDESC	CLI$K_INITPRS,-	; CALLBACK REQUEST DESCRIPTOR FOR INIT

                                     016C   122 		ERRACT=QMN$CMDERR	;

                                     0188   123  

                                     0188   124 GETCMD: $CLIREQDESC	CLI$K_GETCMD,-	; CALLBACK FOR COMMAND

                                     0188   125 		ERRACT=QMN$CMDERR	;

                                     01A4   126  

                                     01A4   127 PARSDON: $CLIREQDESC	CLI$K_ENDPRM1,-	; REQUEST DESCRIPTOR FOR PARSE DONE

                                     01A4   128 		ERRACT=QMN$CMDERR	; ERROR ACTION ROUTINE FOR COMD DONE

                                     01C0   129  

                                     01C0   130 NUMVAL:	$CLIREQDESC	CLI$K_NUMERVAL	; DESCRIPTOR FOR NUMERIC VALUE CONVERT

                                     01DC   131  

                                     01DC   132 INPDESC: $CLIREQDESC	-		; REQUEST DESCRIPTOR FOR INPUT PARAMETER

                                     01DC   133 		RQTYPE=CLI$K_INPUT1,-	; REQUEST PRIMARY INPUT

                                     01DC   134 		ERRACT=QMN$CMDERR	; COMMAND PROCESSING ERROR ACTION

                                     01F8   135  

                                     01F8   136 GETQUAL: $CLIREQDESC	-		; REQUEST DESCRIPTOR FOR CMD QUALS

                                     01F8   137 		RQTYPE=CLI$K_GETQUAL,-	; REQUEST COMMAND QUALS

                                     01F8   138 		ERRACT=QMN$CMDERR	; COMMAND PROCESSING ERROR ACTION

                                     0214   139  

                                     0214   140 ;

                                     0214   141 ; ALLOCATE MESSAGE BUFFER FOR SEND MESSAGE TO SYMBIONT MANAGER

                                     0214   142 ;

                                     0214   143  

                                     0214   144  

                               0000  0214   145 MESSAG:	.WORD	SMR$K_INITIAL		; SYMB_MAN REQUEST TYPE

      48 43 54 41 42 24 53 59 53 00' 0216   146 QUENAM:	.ASCIC	\SYS$BATCH\		;

                                 09  0216       

                           00000226  0220   147 	.BLKB	<16 - < . - QUENAM >>	;

                           00000246  0226   148 OPTIONS:.BLKB	32			; SPACE FOR OPTIONS

                                     0246   149  

                                     0246   150 	PURE_SECTION

                                     0000   151 ;

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   4

V01             DECLARATIONS                                                                                                     (2)



                                     0000   152 ; THE FOLLOWING DATA STRUCTURES ARE ORDER DEPENDENT

                                     0000   153 ;

                                     0000   154 CMDLST:					; START OF COMMAND TYPE TABLE

                           00000007  0000   155 MAXCMD = 7				; HIGHEST COMMAND NUMBER USED

                                 0C  0000   156 	.BYTE	CLI$K_VERB_DEAS		; COMMAND 7 = DEASSIGN QUEUE

                           00000007  0001   157 DEASCMD = 7				;

                                 03  0001   158 	.BYTE	CLI$K_VERB_ASSI		; COMMAND 6  =  ASSIGN QUEUE

                           00000006  0002   159 ASSICMD = 6

                                 37  0002   160 	.BYTE	CLI$K_VERB_SYNC		; COMMAND 5 = SYNC

                           00000005  0003   161 SYNCCMD = 5				;

                                 0F  0003   162 	.BYTE	CLI$K_VERB_DELE		; COMMAND 4 = DELETE

                           00000004  0004   163 DELECMD = 4				;

                                 28  0004   164 	.BYTE	CLI$K_VERB_STOP		; COMMAND 3 = STOP

                           00000003  0005   165 STOPCMD = 3				;

                                 27  0005   166 	.BYTE	CLI$K_VERB_STAR		; COMMAND 2 = START

                           00000002  0006   167 STARCMD = 2				;

                                 1C  0006   168 	.BYTE	CLI$K_VERB_INIT		; COMMAND 1 = INITIALIZE

                           00000001  0007   169 INITCMD = 1				;

                                 00  0007   170 SMRCODE:.BYTE	SMR$K_INITIAL		; REQUEST IS INITIALIZE

                                 02  0008   171 	.BYTE	SMR$K_START		; START DEQUEUING

                                 03  0009   172 	.BYTE	SMR$K_PAUSE		; THE DEFAULT FOR STOP IS PAUSE

                                 01  000A   173 	.BYTE	SMR$K_DELETE		; DELETE THE QUEUE

                                 11  000B   174 	.BYTE	SMR$K_SYNCJOB		; WAIT FOR JOB

                                 05  000C   175 	.BYTE	SMR$K_REDIRECT		; ASSIGN IS A REDIRECT

                                 05  000D   176 	.BYTE	SMR$K_REDIRECT		; LIKEWUSE FOR DEASSIGN

                                     000E   177  

                                     000E   178 ;

                                     000E   179 ; THE FOLLOWING TABLE CONTAINS THE OFFSET TO QUALIFIER LISTS

                                     000E   180 ;

                                     000E   181  

                           FFFFFE24' 000E   182 PRMQUAL:.LONG	INI$G_QUALS-INPDESC	; POINTER FOR INIT QUALIFIER LIST

                           FFFFFE24' 0012   183 	.LONG	STA$G_QUALS-INPDESC	; POINTER FOR START QUALIFIER LIST

                           FFFFFE24' 0016   184 	.LONG	STO$G_QUALS-INPDESC	; POINTER FOR STOP QUALIFIER LIST

                           FFFFFE24' 001A   185 	.LONG	DEL$G_QUALS-INPDESC	; AND FOR DELETE

                           00000000  001E   186 	.LONG	0			; NO PARAMETER QUALIFIERS FOR SYNC

                           FFFFFE24' 0022   187 	.LONG	ASS$G_QUALS-INPDESC	; QUALIFERS FOR ASSIGN

                           FFFFFE24' 0026   188 	.LONG	DEA$G_QUALS-INPDESC	; AND DEASSIGN

                                     002A   189  

                                     002A   190 ;

                                     002A   191 ; THE FOLLOWING TABLE CONTAINS ADDRESS FOR COMMAND QUALIFIERS

                                     002A   192 ;

                                     002A   193  

                           00000000  002A   194 CMDQUAL:.LONG	0			; NO COMMAND QUALIFIERS FOR INIT

                           00000000  002E   195 	.LONG	0			; OR START

                           00000000  0032   196 	.LONG	0			; OR STOP

                           00000000  0036   197 	.LONG	0			; OR DELETE

                           FFFFFE08' 003A   198 	.LONG	SYN$G_QUALS-GETQUAL	; COMMAND QUALIFIERS FOR SYNC

                  00000000 00000000  003E   199 	.LONG	0,0			; NONE FOR ASSIGN OR DEASSIGN

                                     0046   200  

                                     0046   201 ;

                                     0046   202 ; THE FOLLOWING TABLE CONTAINS THE COMPONENT NAMES USED FOR PRINTING MESSAGES

                                     0046   203 ;

                                     0046   204  

                  51 54 49 4E 49 00' 0046   205 NAMES:	.ASCIC	\INITQ\

                                 05  0046       

               51 54 52 41 54 53 00' 004C   206 	.ASCIC	\STARTQ\

                                 06  004C       

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   5

V01             DECLARATIONS                                                                                                     (2)



                  51 50 4F 54 53 00' 0053   207 	.ASCIC	\STOPQ\

                                 05  0053       

               51 54 45 4C 45 44 00' 0059   208 	.ASCIC	\DELETQ\

                                 06  0059       

                     43 4E 59 53 00' 0060   209 	.ASCIC	\SYNC\

                                 04  0060       

               45 55 51 4E 53 41 00' 0065   210 	.ASCIC	\ASNQUE\

                                 06  0065       

               45 55 51 41 45 44 00' 006C   211 	.ASCIC	\DEAQUE\

                                 06  006C       

                                 00  0073   212 	.BYTE	0			; END OF LIST

                                     0074   213  

                                     0074   214 ;

                                     0074   215 ; THE FOLLOWING TABLE CONTAINS A NON-ZERO ENTRY FOR A COMMAND THAT CHANGES

                                     0074   216 ; SYMANTICS WHEN AN ENTRY QUALIFIER APPEARS ON THE COMMAND.

                                     0074   217 ;

                                     0074   218 ENTRYFCN:				; SYMBIONT MANAGER FUNCTION VS COMMAND

                                 00  0074   219 	.BYTE	0		; NO CHAHGE TO INIT

                                 00  0075   220 	.BYTE	0		; OR START QUEUE

                                 0E' 0076   221 	.BYTE	SMR$K_ABORT	; STOP/ENTRY IS AN ABORT OF A BATCH JOB

                                 0C' 0077   222 	.BYTE	SMR$K_RMVJOB	; DELETE/ENTRY IS REMOVE JOB FROM QUEUE

                                 00  0078   223 	.BYTE	0		; SYNC IS NO CHANGE

                                 00  0079   224 	.BYTE	0		; ASSIGN IS LIKEWISW

                                 00  007A   225 	.BYTE	0		; AND ALSO DEASSIGN

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   6

V01             QUEUE MANAGER UTILITY                                                                                            (3)



                                     007B   227 	.SBTTL	QUEUE MANAGER UTILITY

                                     007B   228 ;++

                                     007B   229 ; FUNCTIONAL DESCRIPTION:

                                     007B   230 ; 

                                     007B   231 ;	THIS IMAGE IS ACTIVATED TO PURFORM ANY OF THE OPERATOR

                                     007B   232 ;	ORIENTED QUEUE FUNCTIONS.

                                     007B   233 ; 

                                     007B   234 ; CALLING SEQUENCE:

                                     007B   235 ; 

                                     007B   236 ;	ACTIVATED BY "CLI" 

                                     007B   237 ; 

                                     007B   238 ; INPUT PARAMETERS:

                                     007B   239 ; 

                                     007B   240 ;	CALL BACK ADDRESS AT "CLI$A_ULTISERV" OFF OF "AP"

                                     007B   241 ; 

                                     007B   242 ; IMPLICIT INPUTS:

                                     007B   243 ; 

                                     007B   244 ;	NONE

                                     007B   245 ; 

                                     007B   246 ; OUTPUT PARAMETERS:

                                     007B   247 ; 

                                     007B   248 ; 	NONE

                                     007B   249 ; 

                                     007B   250 ; IMPLICIT OUTPUTS:

                                     007B   251 ; 

                                     007B   252 ; 	NONE

                                     007B   253 ; 

                                     007B   254 ; COMPLETION CODES:

                                     007B   255 ; 

                                     007B   256 ; 	NONE

                                     007B   257 ; 

                                     007B   258 ; SIDE EFFECTS:

                                     007B   259 ; 

                                     007B   260 ; 	NONE

                                     007B   261 ; 

                                     007B   262 ;--

                                     007B   263  

                               0000' 007B   264 	.ENTRY	QUEMAN,0		;

            5B       0044'CF     9E  007D   265 	MOVAB	W^QMN$CTXBLK,R11	; SET CONTEX BLOCK

                                     0082   266 	$CREMBX_S	-		; CREATE A MAILBOX

                                     0082   267 		PROMSK	= #0,-		; NO PROTECTION

                                     0082   268 		MAXMSG	= #32,-		; BIGEST MESSAGE EVER

                                     0082   269 		BUFQUO	= #64,-		; ENOUGH BUFFER FOR 2 MESSAGES

                                     0082   270 		PRMFLG	= #0,-		; NON PERMANENT

                                     0082   271 		CHAN=QMN_W_RSPCHAN(R11)	; CHANNEL ASSIGNED RETURNED HERE

            1A            50     E9  009A   272 	BLBC	R0,10$			; BR IF ERROR CREATING MAILBOX

            50       016C'CF     9E  009D   273 	MOVAB	W^INITPRS,R0		; REQUEST DESCRIPTOR

                          0159   30  00A2   274 	BSBW	CALBAK			; DO CALLBACK

            50       0188'CF     9E  00A5   275 	MOVAB	W^GETCMD,R0		; REQUEST FOR COMMMAND

                          0151   30  00AA   276 	BSBW	CALBAK			; REQUEST THAT INFO FROM CLI

                                 3A  00AD   277 	LOCC	W^GETCMD+CLI$B_RQSTAT,-	; CHECK COMMAND VERB TYPE AGAINST-

            07       018B'CF         00AE   278 		#MAXCMD,CMDLST		; COMMANDS UNDERSTOOD BY THIS IMAGE

                     FF4B CF         00B2       

                          01     12  00B5   279 	BNEQ	20$			; BR IF MATCHED

                                 04  00B7   280 10$:	RET				; RETURN WITH THIS ERROR

         1C AB            50     90  00B8   281 20$:	MOVB	R0,QMN_B_CMDTYP(R11)	; SAVE COMMAND TYPE

            58       0214'CF     9E  00BC   282 	MOVAB	W^MESSAG,R8		; SET MESSAGE BUFFER ADDRESS

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   7

V01             QUEUE MANAGER UTILITY                                                                                            (3)



            88       FF40 CF40   9B  00C1   283 	MOVZBW	SMRCODE-1[R0],(R8)+	; SET DEFAULT REQUEST CODE

                                 9E  00C7   284 	MOVAB	<OPTIONS-QUENAM>(R8),-	; SET ADDRESS TO STORE FIRST OPTION

         08 AB       0010'C8         00C8   285 		QMN_L_MSGPTR(R11)	; AS THE CUURENT END OF MESSAGE

            51       FF54 CF40   D0  00CD   286 	MOVL	CMDQUAL-4[R0],R1	; GET COMMAND QUALIFIER LIST ADDRESS

                          0C     13  00D3   287 	BEQL	30$			; BR IF NONE

            50       01F8'CF     9E  00D5   288 	MOVAB	W^GETQUAL,R0		; ADDRESS OF COMMAND QUALIFIERS

         18 A0            51     D0  00DA   289 	MOVL	R1,CLI$A_QUALST(R0)	; SET ADDRESS OF QUALIFIERS

                          011D   30  00DE   290 	BSBW	CALBAK			; REQUEST THE QUALIFIERS

            50         1C AB     9A  00E1   291 30$:	MOVZBL	QMN_B_CMDTYP(R11),R0	; RESTORE COMMAND TYPE

            52       01DC'CF     9E  00E5   292 	MOVAB	W^INPDESC,R2		; REQUEST DESCRIPTOR

         18 A2       FF1B CF40   D0  00EA   293 	MOVL	PRMQUAL-4[R0],CLI$A_QUALST(R2) ; SET PROPER QUALIFIERS

            50            52     D0  00F1   294 	MOVL	R2,R0			; COPY ADDRESS OF REQUEST DESCRIPTOR

                          0107   30  00F4   295 	BSBW	CALBAK			; ISSUE RESULT PARSE CALL BACK

            03         04 AB     E8  00F7   296 	BLBS	QMN_L_STATUS(R11),40$	; BR IF NO ERRORS PARSING THE COMMAND

                          00DF   31  00FB   297 	BRW	RETCLI			; ELSE RETURN TO CLI

            56         08 A2     7D  00FE   298 40$:	MOVQ	CLI$Q_RQDESC(R2),R6	; GET STRING DESCRIPTOR FOR PARAMETER

         1C AB            05     91  0102   299 	CMPB	#SYNCCMD,QMN_B_CMDTYP(R11) ; IS COMMAND SYNC FOR BATCH JOB

                          35     12  0106   300 	BNEQ	50$			; BR IF NO

                       01 A8     9F  0108   301 	PUSHAB	1(R8)			; PUSH ADDRESS OF START OF QUEUE NAME

            7E            68     9A  010B   302 	MOVZBL	(R8),-(SP)		; SET LENGTH OF QUEUE NAME

                       01 A8     9F  010E   303 	PUSHAB	1(R8)			; ADDRESS TO STORE RESULT OF TRANSLATE

                          0F     DD  0111   304 	PUSHL	#15			; LENGTH OF RESULT BUFFER

            52            5E     D0  0113   305 	MOVL	SP,R2			; ADDRESS OF RESULT BUFFER DESCRIPTOR

                                     0116   306 	$TRNLOG_S 8(R2),(R2),(R2)	; TRANSLATE QUEUE NAME

            68            62     90  012A   307 	MOVB	(R2),(R8)		; SET LENGTH OF TRANSLATED NAME

            5E            10     C0  012D   308 	ADDL	#<8*2>,SP		; CLEAR TWO DESCRIPTORS FROM STACK

            67            56     2C  0130   309 	MOVC5	R6,(R7),#^A/ /,#8,18(R8); COPY JOB NAME - BLANK FILLED

            08            20         0133       

                       12 A8         0135       

         08 AB            53     D0  0137   310 	MOVL	R3,QMN_L_MSGPTR(R11)	; SET END OF MESSAGE DATA

                          2B     11  013B   311 	BRB	60$			;

            88            56     90  013D   312 50$:	MOVB	R6,(R8)+		; STORE COUNT

            67            56     2C  0140   313 	MOVC5	R6,(R7),#0,#15,(R8)	; MOVE QUEUE NAME INTO MESSAGE

            0F            00         0143       

                          68         0145       

            06         1C AB     91  0146   314 	CMPB	QMN_B_CMDTYP(R11),#ASSICMD ; CHECK IF COMMAND IS ASSIGN OR DEASSIGN

                          1C     1F  014A   315 	BLSSU	60$			; BR IF NO

            50       01DC'CF     9E  014C   316 	MOVAB	W^INPDESC,R0		; GET INPUT DESCRIPTOR

                                     0151   317 	ASSUME	CLI$K_INPUT2 EQ CLI$K_INPUT1+1

                          60     96  0151   318 	INCB	CLI$B_RQTYPE(R0)	; CHANGE REQUEST TO SECONDARY INPUT

                          00A8   30  0153   319 	BSBW	CALBAK			; REQUEST SECOND PARAMETER

            56       01E4'CF     7D  0156   320 	MOVQ	W^INPDESC+CLI$Q_RQDESC,R6 ; GET SECOND PARAMETER DESCRIPTOR

            83            56     90  015B   321 	MOVB	R6,(R3)+		; STORE THAT IN MESSAGE

            67            56     2C  015E   322 	MOVC5	R6,(R7),#0,#15,(R3)	; STORE SECOND PARAMETER IN MESSAGE

            0F            00         0161       

                          63         0163       

         08 AB            53     D0  0164   323 	MOVL	R3,QMN_L_MSGPTR(R11)	; SET END OF MESSAGE

                     0214'CF     9F  0168   324 60$:	PUSHAB	W^MESSAG		; FIRST BYTE IN MESSAGE

         08 AB            6E     C3  016C   325 	SUBL3	(SP),QMN_L_MSGPTR(R11),-(SP) ; FIND LENGTH OF MESSAGE

                          7E         0170       

            7E         02 AB     3C  0171   326 	MOVZWL	QMN_W_RSPCHAN(R11),-(SP) ; RESPONCE CHANNEL

                       04 AE     7F  0175   327 	PUSHAQ	4(SP)			; ADDRESS OF MESSAGE DESCRIPTOR

   00000000'9F            04     FB  0178   328 	CALLS	#4,@#SYS$SNDSMB		; SEND A MESSAGE TO SYMBIONT MANAGER

            5F            50     E9  017F   329 	BLBC	R0,RETCLI0		; EXIT WITH ERROR

                                     0182   330 	$QIOW_S	#0,QMN_W_RSPCHAN(R11),#IO$_READVBLK,-

                                     0182   331 		QMN_Q_IOSB(R11),,,@QMN_A_BUFADR(R11),#32

            50       0068'CF     D0  01A2   332 	MOVL	W^LINBUF+4,R0		; GET FINAL STATUS

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   8

V01             QUEUE MANAGER UTILITY                                                                                            (3)



         04 AB            50     D0  01A7   333 	MOVL	R0,QMN_L_STATUS(R11)	; SAVE FINAL STATUS

            33            50     E9  01AB   334 	BLBC	R0,RETCLI0		; RETURN TO CLI

         1C AB            04     91  01AE   335 	CMPB	#DELECMD,QMN_B_CMDTYP(R11) ; WAS COMMAND DELETE

                          22     12  01B2   336 	BNEQ	70$			; BR IF NO

            50       0000'CF     9E  01B4   337 	MOVAB	W^QMN$G_DELE_ENTR,R0	; GET ADDRESS OF REQUEST DESCRIPTOR

                       08 A0     B5  01B9   338 	TSTW	CLI$W_RQSIZE(R0)	; ANY VALUES REMAIN?

                          18     13  01BC   339 	BEQL	70$			; BR IF NO

         08 AB       0226'CF     9E  01BE   340 	MOVAB	W^OPTIONS,QMN_L_MSGPTR(R11) ; RESET MESSAGE POINTER

                       08 AC     DD  01C4   341 	PUSHL	CLI$A_UTILSERV(AP)	; CLI CALL BACK ADDRESS

                          50     DD  01C7   342 	PUSHL	R0			; ADDRESS OF QUALIFIER DESCRIPTOR

   000002CB'EF            02     FB  01C9   343 	CALLS	#2,QMN_ENTRYNUM		; DO A CALL BACK

            02         04 AB     E9  01D0   344 	BLBC	QMN_L_STATUS(R11),70$	; BR IF ERROR CONVERTING VALUE

                          92     11  01D4   345 	BRB	60$			;

            50       01A4'CF     9E  01D6   346 70$:	MOVAB	W^PARSDON,R0		; REQUEST DESCRIPTOR

                          21     10  01DB   347 	BSBB	CALBAK			; REQUEST PARSE TERMINATION

            50         04 AB     D0  01DD   348 RETCLI:	MOVL	QMN_L_STATUS(R11),R0	; GET FINAL STATUS

                                 04  01E1   349 RETCLI0:RET				;

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page   9

V01             QUEUE MANAGER UTILITY                                                                                            (4)



                                     01E2   351 ;+

                                     01E2   352 ; CALNVAL - CALL FOR NUMERIC VALUE

                                     01E2   353 ;

                                     01E2   354 ; CALLBAK - ISSUE GENERAL CALL BACK TO CLI

                                     01E2   355 ;

                                     01E2   356 ; LOCAL SUBROUTINES TO ISSUE CALL BACK TO CLI

                                     01E2   357 ;

                                     01E2   358 ; INPUTS:

                                     01E2   359 ;

                                     01E2   360 ;	4(AP) = ADDRESS OF QUALIFIER DESCRIPTOR (CALNVAL)

                                     01E2   361 ;	R0    = ADDRESS OF REQUEST DESCRIPTOR   (CALBAK)

                                     01E2   362 ;

                                     01E2   363 ; OUTPUT:	NONE

                                     01E2   364 ;

                                     01E2   365 ; SIDE EFFECTS:

                                     01E2   366 ;

                                     01E2   367 ;	FOR NUMERIC VALUE CONVERSION, IF ERROR IS DETECTED, A MESSAGE 

                                     01E2   368 ;	IS DISPLAYED AND RETURN TO THE CALLER IS ISSUED.

                                     01E2   369 ;-

                                     01E2   370 	.ENABL	LSB

                                     01E2   371  

                       EF'AF     9F  01E2   372 CALNVAL:PUSHAB	B^5$			; SET SUBROUTINE RETURN ADDRESS

                       04 BC     9F  01E5   373 	PUSHAB	@4(AP)			; PUSH QUALIFIER DESCRIPTOR

            50       01C0'CF     9E  01E8   374 	MOVAB	W^NUMVAL,R0		; GET REQUEST DESCRIPTOR

                          13     11  01ED   375 	BRB	10$			; EXECUTE CALL BACK IN COMMON CODE

            51       01CC'CF     D0  01EF   376 5$:	MOVL	W^NUMVAL+CLI$L_RQVALU,R1 ; GET THE CONVERTED VALUE

            52         08 AB     D0  01F4   377 	MOVL	QMN_L_MSGPTR(R11),R2	; GET ADR OF NEXT BYTE IN MESSAGE

            11            50     E8  01F8   378 	BLBS	R0,30$			; BR IF NO ERROR

                          011E   31  01FB   379 VALER1:	BRW	VALERR			; PRINT THE ERROR

                                     01FE   380  

                     0168'CF     9F  01FE   381 CALBAK:	PUSHAB	W^BITMAP		; LAST ARGUMENT IN CALL BACK

                     00E8'CF     9F  0202   382 10$:	PUSHAB	W^CLIWORK		; WORK AREA IS ALWAYS SECOND

                          60     9F  0206   383 	PUSHAB	(R0)			; REQUEST DESCRIPTOR IS ALWAYS FIRST

         08 BC            03     FB  0208   384 	CALLS	#3,@CLI$A_UTILSERV(AP)	; GO TO UTILITY SERVICE ROUTINE

                                 05  020C   385 30$:	RSB

                                     020D   386  

                                     020D   387 	.DSABL	LSB

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  10

V01             QUALIFIER ACTION ROUTINES                                                                                        (5)



                                     020D   389 	.SBTTL	QUALIFIER ACTION ROUTINES

                                     020D   390 ;+

                                     020D   391 ; QUALIFIER ACTION ROUTINES

                                     020D   392 ;

                                     020D   393 ; THE FOLLOWING ROUTINES ARE ENTERED DIRECTLY FORM THE CLI RESULT PARSE

                                     020D   394 ; ROUTINE AS THE RESULT OF A SPECFIC QUALIFIER.

                                     020D   395 ;

                                     020D   396 ; THE NECESSARY ACTION IS TAKEN AND CONTROL IS RETURN TO THE RESULT PARSER.

                                     020D   397 ;-

                                     020D   398 	.ENABL	LSB

                                     020D   399  

                               0004' 020D   400 	.ENTRY	QMN_FORMS,^M<R2>	; FORMS TYPE SPECIFIED

            50         04 AC     D0  020F   401 	MOVL	4(AP),R0		; GET QUALIFIER DESCRIPTOR

                       04 A0     DF  0213   402 	PUSHAL	CLI$Q_QDVALDESC(R0)	; PUSH ADDRESS OF FORM STRING

            52         04 A0     7D  0216   403 	MOVQ	CLI$Q_QDVALDESC(R0),R2	; SET STRING DESCRIPTOR IN CASE OF ERROR

   00000000'EF            01     FB  021A   404 	CALLS	#1,LIB$CNVCLIFORMS	; CHANGE FORMS ASCII TO BINARY

            D7            50     E9  0221   405 	BLBC	R0,VALER1		; ERROR IN FORMS TYPE

            52         08 AB     D0  0224   406 	MOVL	QMN_L_MSGPTR(R11),R2	; SET POINTER INTO DATA MESSAGE

            82         40 8F     90  0228   407 	MOVB	#SMO$K_CURFORM,(R2)+	; STORE FORMS TYPE OPTION FLAG

                          0F     11  022C   408 	BRB	30$			; COMMON CODE WITH JOB LIMIT

                                     022E   409  

                               0004' 022E   410 	.ENTRY	QMN_BATPRI,^M<R2>	; INITIAL BATCH PRIORITY

                          06     10  0230   411 	BSBB	10$			; COMMON CODE

                                 4D  0232   412 	.BYTE	SMO$K_INIPRI		; INITIAL PRIORITY

                                     0233   413  

                               0004' 0233   414 	.ENTRY	QMN_JOBCOUNT,^M<R2>	; JOB COUNT QUALIFIER

                          01     10  0235   415 	BSBB	10$			; EXECUTE IN COMMON CODE

                                 4C  0237   416 	.BYTE	SMO$K_JOBLIM		; OPTION FLAG WORD

                          A8     10  0238   417 10$:	BSBB	CALNVAL			; CALL FOR NUMERIC VALUE

            82            9E     90  023A   418 	MOVB	@(SP)+,(R2)+		; STORE FLAG FOR OPTION

            82            51     90  023D   419 30$:	MOVB	R1,(R2)+		; NOW THE DATA

         08 AB            52     D0  0240   420 	MOVL	R2,QMN_L_MSGPTR(R11)	; SET ADJUSTED MESSAGE POINTER

                                 04  0244   421 	RET

                                     0245   422  

                                     0245   423 	.ENABL	LSB

                                     0245   424  

                               0004' 0245   425 	.ENTRY	QMN_BACKSPACE,^M<R2>	; RESTART-BACKING UP

                          99     10  0247   426 	BSBB	CALNVAL			; GET NUMERIC VALUE

            51            51     CE  0249   427 	MNEGL	R1,R1			; COMPLEMENT THE DATA

                          04     11  024C   428 	BRB	5$			; JOIN COMMON CODE

                                     024E   429  

                               0004' 024E   430 	.ENTRY	QMN_FWRDSPACE,^M<R2>	; SPACE THE LISTING FORWARD

                          90     10  0250   431 	BSBB	CALNVAL			; GET A NUMERIC VALUE

            82         62 8F     90  0252   432 5$:	MOVB	#SMO$K_SPCCNT,(R2)+	; STORE OPTION FLAG

            82            51     B0  0256   433 	MOVW	R1,(R2)+		; STORE SPACE COUNT

                          08     11  0259   434 	BRB	40$			; TAKE COMMON EXIT

                          85     10  025B   435 10$:	BSBB	CALNVAL			; CALL FOR NUMERIC VALUE

            82            9E     90  025D   436 20$:	MOVB	@(SP)+,(R2)+		; STORE FLAG FOR OPTION CODE

            82            51     90  0260   437 30$:	MOVB	R1,(R2)+		; NOW THE DATA

         08 AB            52     D0  0263   438 40$:	MOVL	R2,QMN_L_MSGPTR(R11)	; SET ADJUSTED MESSAGE POINTER

                                 04  0267   439 	RET

                                     0268   440  

                                     0268   441 	.DSABL	LSB

                                     0268   442  

                               0000' 0268   443 	.ENTRY	QMN_NEXTJOB,^M<>	; RESTART - ABORTING CURRENT JOB

                                     026A   444 	SETOPT		NEXTJOB		; OPTION CODE

                                     026D   445  

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  11

V01             QUALIFIER ACTION ROUTINES                                                                                        (5)



                               0000' 026D   446 	.ENTRY	QMN_NOSWAP,^M<>		; DISABLE SWAPPING

                                     026F   447 	SETOPT		DISWAP		; OPTION CODE

                                     0272   448  

                               0000' 0272   449 	.ENTRY	QMN_TOPOFILE,^M<>	; RESTART-STARTING FILE OVER

                                     0274   450 	SETOPT		TOPOFILE	; SYMBIONT MANAGER OPTION CODE

                                     0277   451  

                               0000' 0277   452 	.ENTRY	QMN_BATCH,^M<>		; QUEUE IS FOR BATCH JOBS

                                     0279   453 	SETOPT	DETJOB			; QUEUE IS FOR DETACHED JOBS

                                     027C   454  

                               0000' 027C   455 	.ENTRY	QMN_BURST,^M<>		; QUEUE GETS BURST PAGE BY DEFAULT

                                     027E   456 	SETEXPOPT	DEFBRST		; DEFAULT A BURST PAGE

                                     0281   457  

                               0000' 0281   458 	.ENTRY	QMN_NOBRST,^M<>		; QUEUE GETS NO BURST PAGE BY DEFAULT

                                     0283   459 	SETEXPOPT	NODEFBRST	; SYMBIONT MANAGER OPTION CODE

                                     0286   460  

                               0000' 0286   461 	.ENTRY	QMN_GENPRT,^M<>		; GENERIC PRINTING ALLOWED

                                     0288   462 	SETEXPOPT	GENPRT		; SYMBIONT MANAGER OPTION CODE

                                     028B   463  

                               0000' 028B   464 	.ENTRY	QMN_NOGENPRT,^M<>	; GENERIC PRINTING NOT PERMITTED

                                     028D   465 	SETEXPOPT	NOGENPRT	; SYMBIONT MANAGER OPTION CODE

                                     0290   466  

                               0000' 0290   467 	.ENTRY	QMN_FLAG,^M<>		; JOBS GET FLAG PAGE BY DEFAULT

                                     0292   468 	SETEXPOPT	DEFFLAG		; DEFAULT A FLAG PAGE

                                     0295   469  

                               0000' 0295   470 	.ENTRY	QMN_NOFLAG,^M<>		; NO DEFAULT FLAG

                                     0297   471 	SETEXPOPT	NODEFFLAG	; SYMBIONT MANAGER OPTION CODE

                                     029A   472  

                               0000' 029A   473 	.ENTRY	QMN_GENERIC,^M<>	; QUEUE IS FOR GENERIC

                                     029C   474 	SETEXPOPT	GENDEV		; DEVICE IS GENERIC

                                     029F   475  

                               0000' 029F   476 	.ENTRY	QMN_NOGENDEV,^M<>	; DEVICE IS NOT GENERIC

                                     02A1   477 	SETEXPOPT	NOGENDEV	; NOT A GENERIC DEVICE

                                     02A4   478  

                               0000' 02A4   479 	.ENTRY	QMN_TERMDEV,^M<>	; DEVICE IS A TERMINAL

                                     02A6   480 	SETEXPOPT	TRMDEV		;

                                     02A9   481  

                               0000' 02A9   482 	.ENTRY	QMN_NOTERM,^M<>		; DEVICE IS NOT A TERMINAL

                                     02AB   483 	SETEXPOPT	NOTRMDEV	;

                                     02AE   484  

                                     02AE   485 	.ENABL	LSB

                                     02AE   486  

                                     02AE   487 QMN_SETEXPOPT:				;

            51         04 AC     D0  02AE   488 	MOVL	4(AP),R1		; GET THE QUALIFIER DESCRIPTOR

         03 A1            01     E1  02B2   489 	BBC	#CLI$V_QUALEXP,CLI$B_QDSTAT(R1),10$ ; BR IF NOT EXPLICITLY STATED

                          07         02B6       

                                     02B7   490 QMN_SETOPT:				; SET OPTION VALUE

                                 90  02B7   491 	MOVB	@(SP)+,-		; GET OPTION BYTE

         08 BB            9E         02B8   492 		@QMN_L_MSGPTR(R11)	; AND STORE IN MESSAGE

                       08 AB     D6  02BB   493 	INCL	QMN_L_MSGPTR(R11)	; AJUST POINTER FOR BYTE STORED

                                 04  02BE   494 10$:	RET				; ALL DONE

                                     02BF   495  

                               0000' 02BF   496 	.ENTRY	QMN_REQUEUE,^M<>	; ABORT THEN REQUEUE THE JOB

   00000311'EF            6C     FA  02C1   497 	CALLG	(AP),QMN_ABORT		; SET ABORT FUNCTION

                                     02C8   498 	SETOPT	REQUEUE			; SET THE REQUEUE OPTION

                                     02CB   499  

                                     02CB   500 	.DSABL	LSB

                                     02CB   501  

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  12

V01             QUALIFIER ACTION ROUTINES                                                                                        (5)



                                     02CB   502 ;

                                     02CB   503 ; ENTRY SPECIFIED ON DELETE, THEREFORE IT IS A REMOVE JOB

                                     02CB   504 ;

                               003C' 02CB   505 	.ENTRY	QMN_ENTRYNUM,^M<R2,R3,R4,R5> ;

                          FF12   30  02CD   506 	BSBW	CALNVAL			; GET NUMERIC VALUE

            82            51     B0  02D0   507 	MOVW	R1,(R2)+		; STORE IT IN THE BUFFER

         08 AB            52     D0  02D3   508 	MOVL	R2,QMN_L_MSGPTR(R11)	; UPDATE THE ADDRESS

            50         1C AB     9A  02D7   509 	MOVZBL	QMN_B_CMDTYP(R11),R0	; GET CURRENT COMMAND TYPE

            50       FD93 CF40   9A  02DB   510 	MOVZBL	ENTRYFCN-1[R0],R0	; GET THE NEW FUNCTION CODE

                          05     13  02E1   511 	BEQL	20$			; BR IF NO CHANGE

       0214'CF            50     B0  02E3   512 	MOVW	R0,W^MESSAG		; SET SYMBIONT MANAGER FUNCTION CODE

                                 04  02E8   513 20$:	RET				;

                                     02E9   514  

                                     02E9   515 ;

                                     02E9   516 ; ENTRY QUALIFIER IS FALSE FOR SYNC COMMAND

                                     02E9   517 ;

                                     02E9   518  

                               0000' 02E9   519 	.ENTRY	QMN_NOENTRY,^M<>	; ENTRY QUALIFER WAS FALSE

                     0226'CF     B4  02EB   520 	CLRW	W^OPTIONS		; MAKE SURE ENTRY NUMBER IS ZERO

                                 04  02EF   521 	RET				;

                                     02F0   522  

                                     02F0   523 ;

                                     02F0   524 ; QUEUE NAME SPECIFIED FOR SYNC COMMAND

                                     02F0   525 ;

                                     02F0   526  

                               003C' 02F0   527 	.ENTRY	QMN_QUEUENAM,^M<R2,R3,R4,R5> ; QUEUE NAME GIVEN

            50         04 AC     D0  02F2   528 	MOVL	4(AP),R0		; GET QUEUE NAME QUALIFIER DESCRIPTOR

       0216'CF         04 A0     33  02F6   529 	CVTWB	CLI$W_QDVALSIZ(R0),W^QUENAM ; SET LENGTH OF QUEUE NAME SUPPLIED

                                 2C  02FC   530 	MOVC5	CLI$W_QDVALSIZ(R0),-	; LENGTH OF INPUT STRING-

                       04 A0         02FD   531 		@CLI$A_QDVALADR(R0),-	; ADDRESS OF INPUT STRING-

            00         08 B0         02FF   532 		#0,#15,W^QUENAM+1	; SET QUEUE NAME AS COUNTED STRING

       0217'CF            0F         0302       

                                 04  0306   533 	RET				;

                                     0307   534  

                                     0307   535 	.ENABL	LSB

                                     0307   536  

                                     0307   537 ;

                                     0307   538 ; MERGE CONTENTS OF ONE QUEUE TO ANOTHER

                                     0307   539 ;

                                     0307   540  

                               0000' 0307   541 	.ENTRY	QMN_MERGEQUE,0		;

                          0B     10  0309   542 	BSBB	10$			;

                                 04  030B   543 	.BYTE	SMR$K_MERGE		;

                                     030C   544  

                                     030C   545 ;

                                     030C   546 ; STOP AFTER CURRENT JOB IS COMPLETE

                                     030C   547 ;

                                     030C   548  

                               0000' 030C   549 	.ENTRY	QMN_NEXT,0		;

                          06     10  030E   550 	BSBB	10$			; COMMON ROUTINE

                                 07  0310   551 	.BYTE	SMR$K_STOP		; REQUEST CODE

                                     0311   552 ;

                                     0311   553 ; ABORT THE PRINTER ACTION ROUTINE

                                     0311   554 ;

                               0000' 0311   555 	.ENTRY	QMN_ABORT,0		;

                          01     10  0313   556 	BSBB	10$			;

                                 0E  0315   557 	.BYTE	SMR$K_ABORT		; REQUEST ABORTING THE JOB

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  13

V01             QUALIFIER ACTION ROUTINES                                                                                        (5)



       0214'CF            9E     9B  0316   558 10$:	MOVZBW	@(SP)+,W^MESSAG		; SET FUNCTION ACCORDING TO THE OPTION

                                 04  031B   559 	RET				;

                                     031C   560  

                                     031C   561 	.DSABL	LSB

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  14

V01             QUALIFIER ACTION ROUTINES                                                                                        (5)



                                     031C   563 ;+

                                     031C   564 ; VALERR - ERROR CONVERTING VALUE

                                     031C   565 ;

                                     031C   566 ; THIS ROUTINE IS ENTERED WHEN EVER AN ERROR IS DETECTED CONVERTING

                                     031C   567 ; A VALUE.  A MESSAGE IS PRINTED AND RETURN ISSUED TO THE CALLER.

                                     031C   568 ;

                                     031C   569 ; INPUTS:

                                     031C   570 ;	R0 = ERROR CODE FOR CONVERSION ERROR

                                     031C   571 ;	4(AP) = QUALIFIER DESCRIPTOR WITH VALUE DESCRIPTOR

                                     031C   572 ;

                                     031C   573 ;	IT IS ASSUMMED THAT ENTRY IS MADE WITH A CALL FRAME ON THE

                                     031C   574 ;	STACK.  AFTER THE MESSAGE IS PRINTED, A "RET" IS ISSUED TO

                                     031C   575 ;	THE ORIGINAL CALLER.

                                     031C   576 ;-

            51            08     9A  031C   577 VALERR:	MOVZBL	#CLI$W_QDVALSIZ+4,R1	; SET OFFSET TO ERROR DESCRIPTOR

                          0009   31  031F   578 	BRW	CMDER1			; COMMON TO COMMAND ERROR

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  15

V01             COMMAND PARSE ERROR HANDLER                                                                                      (5)



                                     0322   580 	.SBTTL	COMMAND PARSE ERROR HANDLER

                                     0322   581 ;+

                                     0322   582 ; QMN$CMDERR - COMMAND PARSE ERROR

                                     0322   583 ;

                                     0322   584 ; ENTER HERE FOR THE RESULT PARSE ERROR ACTION TO PRINT A MESSAGE

                                     0322   585 ; CONCERNING AN ERROR PARSING THE COMMAND

                                     0322   586 ;

                                     0322   587 ; INPUTS:

                                     0322   588 ;

                                     0322   589 ;	4(AP) = ADDRESS OF REQUEST DESCRIPTOR WITH ERROR SEGMENT

                                     0322   590 ;	8(AP) = ERROR CODE

                                     0322   591 ;

                                     0322   592 ; OUTPUTS:

                                     0322   593 ;

                                     0322   594 ;	THE ERROR IS PRINTED AND CONTROL IS RETURNED TO THE

                                     0322   595 ;	ORIGINAL CALLER.

                                     0322   596 ;-

                               000C' 0322   597 	.ENTRY	QMN$CMDERR,^M<R2,R3>	; ERROR PROCESSING COMMAND LINE

            50         08 AC     D0  0324   598 	MOVL	8(AP),R0		; GET ERROR CODE

            51            0C     D0  0328   599 	MOVL	#CLI$W_RQSIZE+4,R1	; OFFSET TO BAD SEGMENT DESCRIPTOR

            51         04 AC     C0  032B   600 CMDER1:	ADDL	4(AP),R1		; POINT R1 AT ERROR SEGMENT DESCRIPTOR

                          61     DD  032F   601 	PUSHL	(R1)			; PUSH ADDRESS OF START OF ERROR SEGMENT

            6E            71     C0  0331   602 	ADDL	-(R1),(SP)		; FIND END OF ERROR SEGMENT

                                 C1  0334   603 	ADDL3	W^GETCMD+CLI$W_RQSIZE,- ; FIND THE END OF THE

       0194'CF       0190'CF         0335   604 		W^GETCMD+CLI$W_RQSIZE+4,-(SP) ; THE ENTIRE COMMAND

                          7E         033B       

            6E         04 AE     C2  033C   605 	SUBL	4(SP),(SP)		; NOW THE LENGTH OF THE COMMAND

   00000050 8F            6E     D1  0340   606 	CMPL	(SP),#80		; IS LINE TOO LONG

                          04     1B  0347   607 	BLEQU	10$			; BR IF NO

            6E         50 8F     9A  0349   608 	MOVZBL	#80,(SP)		; SET REASONABLE VALUE

                          6E     7F  034D   609 10$:	PUSHAQ	(SP)			; ADDRESS OF THAT DESCRIPTOR

                          51     DD  034F   610 	PUSHL	R1			; ADDRESS OF ERROR SEGMENT

                 00010002 8F     DD  0351   611 	PUSHL	#<2!<1@16>>		; NUMBER OF FAO ARGUMENTS-SUPRESS PREFIX

                 000381B0 8F     DD  0357   612 	PUSHL	#CLI$_BADTEXT		; THE ERROR

                          7E     D4  035D   613 	CLRL	-(SP)			; ZERO FAO ARG COUNT

                          50     DD  035F   614 	PUSHL	R0			; PUSH ERROR CODE

                          06     DD  0361   615 	PUSHL	#6			; TOTAL NUMBER OF ARGS IN BLOCK

                          0013   31  0363   616 	BRW	SHOW_MSG		; PRINT THE ERROR

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  16

V01             EXECUTION ERROR                                                                                                  (5)



                                     0366   618 	.SBTTL	EXECUTION ERROR

                                     0366   619 ;+

                                     0366   620 ; EXEERR - COMMAND EXECUTION ERROR

                                     0366   621 ;

                                     0366   622 ; THIS ROUTINE IS CALLED WHEN AN ERROR IS DETECTED ATTEMPTING TO CARRY

                                     0366   623 ; OUT THE COMMAND ISSUED BY THE USER.

                                     0366   624 ;

                                     0366   625 ; INPUTS:

                                     0366   626 ;

                                     0366   627 ;	R0 = SYSTEM ERROR CODE

                                     0366   628 ;	R1 = THE UTILITY ERROR CODE

                                     0366   629 ;	R2 = LENGTH OF QUALIFIYING STRING

                                     0366   630 ;	R3 = ADDRESS OF QUALFIYING STRING

                                     0366   631 ;

                                     0366   632 ; OUTPUTS:

                                     0366   633 ;

                                     0366   634 ;	THE MESSAGE IS DISPLAYED AND RETURN TO THE CALLER IS MADE.

                                     0366   635 ;-

                               0000  0366   636 EXEERR:	.WORD	0			;

                          0C     BB  0368   637 	PUSHR	#^M<R2,R3>		; FORM DESCRIPTOR FOR TEXT

                          7E     D4  036A   638 	CLRL	-(SP)			; FAO COUNT = 0

                          50     DD  036C   639 	PUSHL	R0			; SYSTEM ERROR CODE

                       08 AE     7F  036E   640 	PUSHAQ	8(SP)			; ADDRESS OF TEXT DESCRIPTOR

                          01     DD  0371   641 	PUSHL	#1			; NUMBER OF FAO ARGS

                          51     DD  0373   642 	PUSHL	R1			; UTILITY ERROR CODE

                          05     DD  0375   643 	PUSHL	#5			; TOTAL ARGUMENT COUNT

                          00     11  0377   644 	BRB	SHOW_MSG		; JOIN SHOW MESSAGE

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  17

V01             SHOW MESSAGE                                                                                                     (5)



                                     0379   646 	.SBTTL	SHOW MESSAGE

                                     0379   647 ;+

                                     0379   648 ; SHOW_MSG - DISPLAY A MESSAGE

                                     0379   649 ;

                                     0379   650 ; THIS ROUTINE IS ENTERED VIA A BR/JMP TO DISPLAY AN ERROR MESSAGE

                                     0379   651 ;

                                     0379   652 ; INPUTS:

                                     0379   653 ;	0(SP) = THE MESSAGE DESCRIPTOR SET FOR A CALL TO SYS$PUTMSG.

                                     0379   654 ;-

                                     0379   655  

                                     0379   656 SHOW_MSG:				; OUTPUT THE ERROR

            5B       0044'CF     9E  0379   657 	MOVAB	W^QMN$CTXBLK,R11	; SET CONTEXT BLK ADR TO NORMAL PLACE

            50         04 AE     D0  037E   658 	MOVL	4(SP),R0		; GET THE PRIMARY MESSAGE ID

            07            50     E8  0382   659 	BLBS	R0,7$			; BR IF NOT AN ERROR

            50            06     CA  0385   660 	BICL	#6,R0			; REDUCE ERROR TO WARINING

         04 AB            50     D0  0388   661 	MOVL	R0,QMN_L_STATUS(R11)	; SAVE MOST RECENT STATUS

            51       FCB6 CF     9E  038C   662 7$:	MOVAB	NAMES,R1		; SET ADDRESS OF COMMAND NAMES

            50         1C AB     9A  0391   663 	MOVZBL	QMN_B_CMDTYP(R11),R0	; GET THE COMMAND WE ARE DOING

                          06     11  0395   664 	BRB	9$			; BR IF COMMON CODE

            7E            81     9A  0397   665 8$:	MOVZBL	(R1)+,-(SP)		; GET LENGTH OF STRING

            51            8E     C0  039A   666 	ADDL	(SP)+,R1		; ADVANCE TO NEXT

            F7            50     F5  039D   667 9$:	SOBGTR	R0,8$			; LOOP

            50            81     9A  03A0   668 10$:	MOVZBL	(R1)+,R0		; FORM STRING DESCRIPTOR FOR NAME

                          03     BB  03A3   669 	PUSHR	#^M<R0,R1>		; PUSH THAT DEESCRIPTOR

                          6E     7F  03A5   670 	PUSHAQ	(SP)			; NOW PUSH THE ADDRESS OF THAT

                          7E     D4  03A7   671 	CLRL	-(SP)			; ZERO ADDRESS OF ACTION ROUTINE

                       10 AE     9F  03A9   672 	PUSHAB	16(SP)			; PUSH ADDRESS OF MESSAGE BUFFER

   00000000'9F            03     FB  03AC   673 	CALLS	#3,@#SYS$PUTMSG		; PRINT THE MESSAGE

                                     03B3   674 	SETBIT	STS$V_INHIB_MSG,QMN_L_STATUS(R11) ; TELL CLI - NO MORE MESSAGES

            50         04 AB     D0  03B8   675 	MOVL	QMN_L_STATUS(R11),R0	; PASS ERROR TO CALLER

                                 04  03BC   676 EXTERR:	RET				;

                                     03BD   677  

                                     03BD   678  

                                     03BD   679 	.END	QUEMAN			;

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  18

SYMBOL TABLE                                                                                                                     (5)



$$.TAB         = 00000000 R     03   CLI$K_OUTPUT2  = 00000021            CLI$K_VERB_SET = 00000025            

$$.TABEND      = 00000044 R     03   CLI$K_OUTPUT3  = 00000022            CLI$K_VERB_SHOW= 00000026            

$$.TMP         = 00000000            CLI$K_OUTPUT4  = 00000023            CLI$K_VERB_SORT= 00000035            

$$T1           = 00000001            CLI$K_OUTSPEC  = 00000002            CLI$K_VERB_STAR= 00000027            

$CLI.          = 000001F8 R     03   CLI$K_PARDONE  = 00000003            CLI$K_VERB_STOP= 00000028            

$CLI..         = 00000214 R     03   CLI$K_QDBITS     00000014            CLI$K_VERB_SUBM= 00000029            

ASS$G_QUALS      ********   X   04   CLI$K_QUALDEF    00000014            CLI$K_VERB_SYNC= 00000037            

ASSICMD        = 00000006            CLI$K_REQDESC    0000001C            CLI$K_VERB_TYPE= 0000002A            

BIT...         = 00000020            CLI$K_UTILOPR  = 00000000            CLI$K_VERB_UNLO= 0000002E            

BITMAP           00000168 R     03   CLI$K_VALCONV  = 00000004            CLI$K_WORKAREA   00000080            

CALBAK           000001FE R     04   CLI$K_VERB_ALLO= 00000001            CLI$L_CLIFLAG    00000018            

CALNVAL          000001E2 R     04   CLI$K_VERB_ANAL= 00000002            CLI$L_INIARGCNT  00000000            

CLI$A_ABSACT     00000014            CLI$K_VERB_APPE= 0000002F            CLI$L_LINKFLAG   00000014            

CLI$A_ERRACT     00000004            CLI$K_VERB_ASSI= 00000003            CLI$L_RQVALU     0000000C            

CLI$A_FLSACT     00000010            CLI$K_VERB_BASI= 00000004            CLI$L_USRVAL     00000014            

CLI$A_IMGFILED   00000010            CLI$K_VERB_BLIS= 00000005            CLI$L_WORKAREA   00000000            

CLI$A_IMGHDADR   0000000C            CLI$K_VERB_CANC= 00000033            CLI$M_ABSADR   = 00000002            

CLI$A_PROGXFER   00000004            CLI$K_VERB_COBO= 00000006            CLI$M_ALLOCCUR = 00000001            

CLI$A_PRSACT     00000010            CLI$K_VERB_CONT= 00000007            CLI$M_BATCH    = 00000008            

CLI$A_QDVALADR   00000008            CLI$K_VERB_COPY= 00000008            CLI$M_CONCATINP= 00000002            

CLI$A_QUALST     00000018            CLI$K_VERB_CREA= 00000009            CLI$M_DBGEXCP  = 00010000            

CLI$A_RQADDR     0000000C            CLI$K_VERB_DATA= 0000000A            CLI$M_DBGTRU   = 00000002            

CLI$A_TRUACT     0000000C            CLI$K_VERB_DEAL= 0000000B            CLI$M_DEBUG    = 00000001            

CLI$A_UTILSERV   00000008            CLI$K_VERB_DEAS= 0000000C            CLI$M_DUMMY    = 00000002            

CLI$B_BITNUM     00000001            CLI$K_VERB_DEBU= 0000000D            CLI$M_EXPNAM   = 00000004            

CLI$B_QDBLKSIZ   00000000            CLI$K_VERB_DEFI= 0000000E            CLI$M_INDIRECT = 00000010            

CLI$B_QDCODE     00000001            CLI$K_VERB_DELE= 0000000F            CLI$M_KEYVALU  = 00000002            

CLI$B_QDFLGS     00000002            CLI$K_VERB_DEPO= 00000010            CLI$M_LASTVAL  = 00000001            

CLI$B_QDSTAT     00000003            CLI$K_VERB_DIFF= 00000011            CLI$M_MOREINP  = 00000004            

CLI$B_RQFLGS     00000002            CLI$K_VERB_DIRE= 00000012            CLI$M_MOREVALS = 00000001            

CLI$B_RQINDX     00000001            CLI$K_VERB_DISM= 00000013            CLI$M_PARMDEF  = 00000008            

CLI$B_RQSTAT     00000003            CLI$K_VERB_DUMP= 00000030            CLI$M_PARMPRS  = 00000001            

CLI$B_RQTYPE     00000000            CLI$K_VERB_EDIT= 00000014            CLI$M_PARMREQ  = 00000001            

CLI$C_QDBITS     00000014            CLI$K_VERB_EOD = 00000015            CLI$M_QDEXPA   = 00000004            

CLI$C_QUALDEF    00000014            CLI$K_VERB_EXAM= 00000016            CLI$M_QDUSRV   = 00000002            

CLI$C_REQDESC    0000001C            CLI$K_VERB_EXIT= 00000017            CLI$M_QUALEXP  = 00000002            

CLI$C_WORKAREA   00000080            CLI$K_VERB_FORE= 000000FF            CLI$M_QUALTRU  = 00000001            

CLI$K_ASCIIVAL = 00000041            CLI$K_VERB_FORT= 00000018            CLI$M_TRMVRBLV = 00000300            

CLI$K_CLISERV  = 00000005            CLI$K_VERB_GOTO= 00000019            CLI$M_VERIFY   = 00000004            

CLI$K_ENDPRM1  = 00000030            CLI$K_VERB_HELP= 0000001A            CLI$M_VFYINP   = 00000020            

CLI$K_ENDPRM2  = 00000031            CLI$K_VERB_IF  = 0000001B            CLI$Q_QDVALDESC  00000004            

CLI$K_ENDPRM3  = 00000032            CLI$K_VERB_INIT= 0000001C            CLI$Q_RQDESC     00000008            

CLI$K_ENDPRM4  = 00000033            CLI$K_VERB_INQU= 0000001D            CLI$S_PRITYP   = 00000004            

CLI$K_FILSPEC  = 00000044            CLI$K_VERB_LIBR= 00000034            CLI$S_SUBTYP   = 00000004            

CLI$K_GETCMD   = 00000001            CLI$K_VERB_LINK= 0000001E            CLI$S_TRMVRBLV = 00000002            

CLI$K_GETOPT   = 00000003            CLI$K_VERB_LOGO= 0000001F            CLI$V_ABSADR   = 00000001            

CLI$K_GETQUAL  = 00000002            CLI$K_VERB_MACR= 00000020            CLI$V_ALLOCCUR = 00000000            

CLI$K_INITPRS  = 00000000            CLI$K_VERB_MCR = 00000021            CLI$V_BATCH    = 00000003            

CLI$K_INPSPEC  = 00000001            CLI$K_VERB_MOUN= 0000002B            CLI$V_CONCATINP= 00000001            

CLI$K_INPUT1   = 00000010            CLI$K_VERB_ON  = 00000022            CLI$V_DBGEXCP  = 00000010            

CLI$K_INPUT2   = 00000011            CLI$K_VERB_PATC= 0000002C            CLI$V_DBGTRU   = 00000001            

CLI$K_INPUT3   = 00000012            CLI$K_VERB_PRIN= 00000023            CLI$V_DEBUG    = 00000000            

CLI$K_INPUT4   = 00000013            CLI$K_VERB_PURG= 00000031            CLI$V_DUMMY    = 00000001            

CLI$K_KEYVAL   = 00000043            CLI$K_VERB_RENA= 00000032            CLI$V_EXPNAM   = 00000002            

CLI$K_KEYWORD  = 00000042            CLI$K_VERB_REPL= 0000002D            CLI$V_INDIRECT = 00000004            

CLI$K_NUMERVAL = 00000040            CLI$K_VERB_REQU= 00000036            CLI$V_KEYVALU  = 00000001            

CLI$K_OUTPUT1  = 00000020            CLI$K_VERB_RUN = 00000024            CLI$V_LASTVAL  = 00000000            

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  19

SYMBOL TABLE                                                                                                                     (5)



CLI$V_MOREINP  = 00000002            CLI$_NOCOMD    = 000380B0            LINBUF           00000064 R     03   

CLI$V_MOREVALS = 00000000            CLI$_NOKEYW    = 000380B8            LINBUFSIZ      = 00000084            

CLI$V_PARMDEF  = 00000003            CLI$_NOLIST    = 000380C0            MAXCMD         = 00000007            

CLI$V_PARMPRS  = 00000000            CLI$_NOOPTPRS  = 00038842            MESSAG           00000214 R     03   

CLI$V_PARMREQ  = 00000000            CLI$_NOQUAL    = 000380C8            MSG$_ABOOPR    = 00000011            

CLI$V_PRITYP   = 00000004            CLI$_NORMAL    = 00030001            MSG$_ABORT     = 00000030            

CLI$V_QDEXPA   = 00000002            CLI$_NOTNEG    = 000380D8            MSG$_ACCRSP    = 00000021            

CLI$V_QDUSRV   = 00000001            CLI$_NOVALU    = 000380D0            MSG$_CONFIRM   = 00000031            

CLI$V_QUALEXP  = 00000001            CLI$_NOVALUE   = 0003882A            MSG$_CONNECT   = 00000032            

CLI$V_QUALTRU  = 00000000            CLI$_NULFIL    = 000380E0            MSG$_CRUNSOLIC = 00000002            

CLI$V_SUBTYP   = 00000000            CLI$_NUMBER    = 000380E8            MSG$_DELPROC   = 00000003            

CLI$V_TRMVRBLV = 00000008            CLI$_ONCOMD    = 000380F0            MSG$_DELSMB    = 00000014            

CLI$V_VERIFY   = 00000002            CLI$_ONERR     = 000380F8            MSG$_DEVOFFLIN = 00000005            

CLI$V_VFYINP   = 00000005            CLI$_ONEVAL    = 00038158            MSG$_DEVONLIN  = 00000007            

CLI$W_QDVALSIZ   00000004            CLI$_ONLEVL    = 00038100            MSG$_DISCON    = 00000033            

CLI$W_RQSIZE     00000008            CLI$_ONOVF     = 00038108            MSG$_EXIT      = 00000034            

CLI$W_SERVCOD    00000001            CLI$_OVRFLW    = 00038160            MSG$_INIOPR    = 00000010            

CLI$_ABFNAM    = 000381B8            CLI$_PARMDEL   = 00038110            MSG$_INTMSG    = 00000035            

CLI$_ABKEYW    = 00038000            CLI$_PROC_ID   = 0003FFF1            MSG$_OPREPLY   = 00000009            

CLI$_ABVERB    = 00038008            CLI$_QUEJOBCRE = 0003FFF9            MSG$_OPRQST    = 00000008            

CLI$_BADRET    = 00038198            CLI$_REQPRMABS = 00038812            MSG$_PATHLOST  = 00000036            

CLI$_BADTEXT   = 000381B0            CLI$_RSLOVF    = 00038118            MSG$_PROTOCOL  = 00000037            

CLI$_BUFOVF    = 00038018            CLI$_SKPDAT    = 00038120            MSG$_REJECT    = 00000038            

CLI$_COMPLX    = 00038020            CLI$_SPARE0    = 00038010            MSG$_RESOPR    = 00000013            

CLI$_CONFQUAL  = 00038802            CLI$_SPARE1    = 00038058            MSG$_SCANBAD   = 00000028            

CLI$_CREQUEJOB = 0003884A            CLI$_STKOVF    = 00038128            MSG$_SCANRSP   = 00000029            

CLI$_DEFOVF    = 00038028            CLI$_SUBMITERR = 00038852            MSG$_SMBDON    = 00000009            

CLI$_DEVALSPL  = 0003885A            CLI$_SYMDEL    = 00038130            MSG$_SMBINI    = 00000008            

CLI$_DEVNOTFOR = 0003887A            CLI$_SYMOVF    = 00038138            MSG$_SMBRSP    = 00000020            

CLI$_DEVNOTSPL = 00038862            CLI$_UNDFIL    = 00038188            MSG$_SNDACC    = 0000000A            

CLI$_DIRECT    = 00038030            CLI$_UNDSYM    = 00038140            MSG$_SNDSMB    = 00000004            

CLI$_EXPSYN    = 00038038            CLI$_UNPROPARM = 00038170            MSG$_SUSOPR    = 00000012            

CLI$_FILOPN    = 00038190            CLI$_UNPROQUAL = 00038168            MSG$_THIRDPARTY= 00000039            

CLI$_ILLVAL    = 0003883A            CLI$_USGOTO    = 00038148            MSG$_TIMEOUT   = 0000003A            

CLI$_IMCHNG    = 00038040            CLI$_VALCNVERR = 00038832            MSG$_TRMHANGUP = 00000006            

CLI$_IMGFNF    = 00038872            CLI$_VALREQ    = 00038150            MSG$_TRMUNSOLIC= 00000001            

CLI$_INSFPRM   = 00038048            CLIWORK          000000E8 R     03   MSG$_XM_ATTN   = 0000000D            

CLI$_INVKEY    = 00038178            CMDER1           0000032B R     04   MSG$_XM_DATAVL = 0000000B            

CLI$_INVQUAL   = 0003880A            CMDLST           00000000 R     04   MSG$_XM_SHUTDN = 0000000C            

CLI$_INVQUALNUM= 0003881A            CMDQUAL          0000002A R     04   NAMES            00000046 R     04   

CLI$_INVREQTYP = 00038822            DEA$G_QUALS      ********   X   04   NUMVAL           000001C0 R     03   

CLI$_INVRSP    = 00038180            DEASCMD        = 00000007            OPTIONS          00000226 R     03   

CLI$_INVUIC    = 000381A8            DEL$G_QUALS      ********   X   04   PARSDON          000001A4 R     03   

CLI$_IVCHAR    = 00038050            DELECMD        = 00000004            PRMQUAL          0000000E R     04   

CLI$_IVDEVTYPE = 0003886A            ENTRYFCN         00000074 R     04   QMN$CMDERR       00000322 RG    04   

CLI$_IVFNAM    = 000381C0            ERRRAB           00000000 R     03   QMN$CTXBLK     = 00000044 R     03   

CLI$_IVKEYW    = 00038060            EXEERR           00000366 R     04   QMN$G_DELE_ENTR  ********   X   04   

CLI$_IVOPER    = 00038068            EXTERR           000003BC R     04   QMN_ABORT        00000311 RG    04   

CLI$_IVPROT    = 00038070            GBL...         = 00000000            QMN_A_BUFADR   = 00000010            

CLI$_IVQLOC    = 00038078            GETCMD           00000188 R     03   QMN_BACKSPACE    00000245 RG    04   

CLI$_IVSYMB    = 00038080            GETQUAL          000001F8 R     03   QMN_BATCH        00000277 RG    04   

CLI$_IVVALU    = 00038088            INI$G_QUALS      ********   X   04   QMN_BATPRI       0000022E RG    04   

CLI$_IVVERB    = 00038090            INITCMD        = 00000001            QMN_BURST        0000027C RG    04   

CLI$_MAXPARM   = 00038098            INITPRS          0000016C R     03   QMN_B_CMDTYP   = 0000001C            

CLI$_MULKEY    = 000381A0            INPDESC          000001DC R     03   QMN_ENTRYNUM     000002CB RG    04   

CLI$_NOATFIL   = 000380A0            IO$_READVBLK     ********   X   04   QMN_FLAG         00000290 RG    04   

CLI$_NOCCAT    = 000380A8            LIB$CNVCLIFORMS  ********   X   04   QMN_FORMS        0000020D RG    04   

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  20

SYMBOL TABLE                                                                                                                     (5)



QMN_FWRDSPACE    0000024E RG    04   RAB$L_KBF        00000030            RAB$V_PTA      = 0000001D            

QMN_GENERIC      0000029A RG    04   RAB$L_PBF        00000030            RAB$V_RAH      = 00000009            

QMN_GENPRT       00000286 RG    04   RAB$L_RBF        00000028            RAB$V_RLK      = 00000013            

QMN_JOBCOUNT     00000233 RG    04   RAB$L_RFA0       00000010            RAB$V_RNE      = 00000018            

QMN_L_MSGPTR   = 00000008            RAB$L_RHB        0000002C            RAB$V_RNF      = 0000001B            

QMN_L_STATUS   = 00000004            RAB$L_ROP        00000004            RAB$V_TMO      = 00000019            

QMN_MERGEQUE     00000307 RG    04   RAB$L_STS        00000008            RAB$V_TPT      = 00000001            

QMN_NEXT         0000030C RG    04   RAB$L_STV        0000000C            RAB$V_UIF      = 00000004            

QMN_NEXTJOB      00000268 RG    04   RAB$L_UBF        00000024            RAB$V_ULK      = 00000012            

QMN_NOBRST       00000281 RG    04   RAB$M_ASY      = 00000001            RAB$V_WAT      = 00000011            

QMN_NOENTRY      000002E9 RG    04   RAB$M_BIO      = 00000800            RAB$V_WBH      = 0000000A            

QMN_NOFLAG       00000295 RG    04   RAB$M_CCO      = 80000000            RAB$W_ISI        00000002            

QMN_NOGENDEV     0000029F RG    04   RAB$M_CVT      = 04000000            RAB$W_RFA        00000010            

QMN_NOGENPRT     0000028B RG    04   RAB$M_EOF      = 00000100            RAB$W_RFA4       00000014            

QMN_NOSWAP       0000026D RG    04   RAB$M_FDL      = 00000040            RAB$W_RSZ        00000022            

QMN_NOTERM       000002A9 RG    04   RAB$M_HSH      = 00000080            RAB$W_USZ        00000020            

QMN_QUEUENAM     000002F0 RG    04   RAB$M_KGE      = 00200000            RETCLI           000001DD R     04   

QMN_Q_BUFDES   = 0000000C            RAB$M_KGT      = 00400000            RETCLI0          000001E1 R     04   

QMN_Q_IOSB     = 00000014            RAB$M_LIM      = 00004000            SHOW_MSG         00000379 R     04   

QMN_REQUEUE      000002BF RG    04   RAB$M_LOA      = 00002000            SMO$K_BRSTPAG  = 00000002            

QMN_SETEXPOPT    000002AE R     04   RAB$M_LOC      = 00010000            SMO$K_COPIES   = 0000000A            

QMN_SETOPT       000002B7 R     04   RAB$M_MAS      = 00000020            SMO$K_CURFORM  = 00000040            

QMN_TERMDEV      000002A4 RG    04   RAB$M_NLK      = 00100000            SMO$K_DEFBRST  = 00000046            

QMN_TOPOFILE     00000272 RG    04   RAB$M_NXR      = 00800000            SMO$K_DEFFLAG  = 00000048            

QMN_T_SPARE    = 0000001D            RAB$M_PMT      = 40000000            SMO$K_DELETE   = 00000001            

QMN_V_BATCH    = 00000001            RAB$M_PPF_IND  = 00004000            SMO$K_DETJOB   = 00000043            

QMN_V_DEVICE   = 00000002            RAB$M_PPF_RAT  = 00003FC0            SMO$K_DISWAP   = 0000004E            

QMN_V_RESTART  = 00000004            RAB$M_PTA      = 20000000            SMO$K_DOUBLE   = 00000007            

QMN_V_START    = 00000003            RAB$M_RAH      = 00000200            SMO$K_FLAGPAG  = 00000004            

QMN_W_BUFCNT   = 0000000C            RAB$M_RLK      = 00080000            SMO$K_FORMTYPE = 00000024            

QMN_W_BUFSIZ   = 0000000E            RAB$M_RNE      = 01000000            SMO$K_GENDEV   = 00000044            

QMN_W_FLAGS    = 00000000            RAB$M_RNF      = 08000000            SMO$K_GENPRT   = 00000041            

QMN_W_RSPCHAN  = 00000002            RAB$M_TMO      = 02000000            SMO$K_HOLD     = 00000021            

QUEMAN           0000007B RG    04   RAB$M_TPT      = 00000002            SMO$K_INIPRI   = 0000004D            

QUENAM           00000216 R     03   RAB$M_UIF      = 00000010            SMO$K_JOBCOPY  = 00000023            

RAB$B_BID        00000000            RAB$M_ULK      = 00040000            SMO$K_JOBLIM   = 0000004C            

RAB$B_BLN        00000001            RAB$M_WAT      = 00020000            SMO$K_JOBNAME  = 00000027            

RAB$B_KRF        00000035            RAB$M_WBH      = 00000400            SMO$K_JOBPRI   = 00000022            

RAB$B_KSZ        00000034            RAB$S_PPF_RAT  = 00000008            SMO$K_LOWER    = 00000025            

RAB$B_MBC        00000037            RAB$V_ASY      = 00000000            SMO$K_NEXTJOB  = 00000060            

RAB$B_MBF        00000036            RAB$V_BIO      = 0000000B            SMO$K_NOBRSTPAG= 00000003            

RAB$B_PSZ        00000034            RAB$V_CCO      = 0000001F            SMO$K_NODEFBRST= 00000047            

RAB$B_RAC        0000001E            RAB$V_CVT      = 0000001A            SMO$K_NODEFFLAG= 00000049            

RAB$B_ROP1       00000005            RAB$V_EOF      = 00000008            SMO$K_NOFEED   = 00000008            

RAB$B_ROP2       00000006            RAB$V_FDL      = 00000006            SMO$K_NOFLAGPAG= 00000005            

RAB$B_ROP3       00000007            RAB$V_HSH      = 00000007            SMO$K_NOGENDEV = 00000045            

RAB$B_TMO        0000001F            RAB$V_KGE      = 00000015            SMO$K_NOGENPRT = 00000042            

RAB$C_BID      = 00000001            RAB$V_KGT      = 00000016            SMO$K_NOLOWER  = 00000028            

RAB$C_BLN        00000044            RAB$V_LIM      = 0000000E            SMO$K_NOTRMDEV = 0000004B            

RAB$C_KEY      = 00000001            RAB$V_LOA      = 0000000D            SMO$K_PAGCNT   = 00000009            

RAB$C_RFA      = 00000002            RAB$V_LOC      = 00000010            SMO$K_PAGHDR   = 00000006            

RAB$C_SEQ      = 00000000            RAB$V_MAS      = 00000005            SMO$K_PARAMS   = 00000026            

RAB$K_BLN        00000044            RAB$V_NLK      = 00000014            SMO$K_REQUEUE  = 00000070            

RAB$L_BKT        00000038            RAB$V_NXR      = 00000017            SMO$K_RLSTIM   = 00000020            

RAB$L_CTX        00000018            RAB$V_PMT      = 0000001E            SMO$K_SPCCNT   = 00000062            

RAB$L_DCT        00000038            RAB$V_PPF_IND  = 0000000E            SMO$K_TOPOFILE = 00000061            

RAB$L_FAB        0000003C            RAB$V_PPF_RAT  = 00000006            SMO$K_TRMDEV   = 0000004A            

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  21

SYMBOL TABLE                                                                                                                     (5)



SMR$K_ABORT    = 0000000E            STS$V_SUCCESS  = 00000000            

SMR$K_ADDFIL   = 0000000A            SYN$G_QUALS      ********   X   04   

SMR$K_ALTER    = 0000000D            SYNCCMD        = 00000005            

SMR$K_CLSJOB   = 0000000B            SYS$CREMBX       ********   X   04   

SMR$K_CREJOB   = 00000009            SYS$PUTMSG       ********   X   04   

SMR$K_DELETE   = 00000001            SYS$QIOW         ********   X   04   

SMR$K_DETINIT  = 00000010            SYS$SNDSMB       ********   X   04   

SMR$K_ENTER    = 00000008            SYS$TRNLOG       ********   X   04   

SMR$K_INITIAL  = 00000000            VALER1           000001FB R     04   

SMR$K_JUSTIFY  = 00000006            VALERR           0000031C R     04   

SMR$K_MERGE    = 00000004            _$$_           = 000000EF            

SMR$K_PAUSE    = 00000003            _ALL_          = 00000001            

SMR$K_REDIRECT = 00000005            _BASE_         = 00000044 R     03   

SMR$K_RELEASE  = 0000000F            _END_          = 00000064 R     03   

SMR$K_RMVJOB   = 0000000C            _GBL_          = 00000000            

SMR$K_START    = 00000002            _TOP_          = 00000061 R     03   

SMR$K_STOP     = 00000007            

SMR$K_SYNCJOB  = 00000011            

SMRCODE          00000007 R     04   

STA$G_QUALS      ********   X   04   

STARCMD        = 00000002            

STO$G_QUALS      ********   X   04   

STOPCMD        = 00000003            

STS$K_ERROR    = 00000002            

STS$K_INFO     = 00000003            

STS$K_SEVERE   = 00000004            

STS$K_SUCCESS  = 00000001            

STS$K_WARNING  = 00000000            

STS$M_CODE     = 00007FF8            

STS$M_COND_ID  = 0FFFFFF8            

STS$M_CONTROL  = F0000000            

STS$M_CUST_DEF = 08000000            

STS$M_FAC_NO   = 0FFF0000            

STS$M_FAC_SP   = 00008000            

STS$M_INHIB_MSG= 10000000            

STS$M_MSG_NO   = 0000FFF8            

STS$M_SEVERITY = 00000007            

STS$M_SUCCESS  = 00000001            

STS$S_CODE     = 0000000C            

STS$S_COND_ID  = 00000019            

STS$S_CONTROL  = 00000004            

STS$S_CUST_DEF = 00000001            

STS$S_FAC_NO   = 0000000C            

STS$S_FAC_SP   = 00000001            

STS$S_INHIB_MSG= 00000001            

STS$S_MSG_NO   = 0000000D            

STS$S_SEVERITY = 00000003            

STS$S_SUCCESS  = 00000001            

STS$V_CODE     = 00000003            

STS$V_COND_ID  = 00000003            

STS$V_CONTROL  = 0000001C            

STS$V_CUST_DEF = 0000001B            

STS$V_FAC_NO   = 00000010            

STS$V_FAC_SP   = 0000000F            

STS$V_INHIB_MSG= 0000001C            

STS$V_MSG_NO   = 00000003            

STS$V_SEVERITY = 00000000            

QUEMAN          - QUEUE MANAGER UTILITY                          21-AUG-1978 19:00:05   VAX-11 MACRO X0.3-11               Page  22

PROGRAM SECTION SYNOPSIS                                                                                                         (5)







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$            00000080      02     NOPIC   USR   CON   ABS   LCL NOSHR   EXE   RD    WRT BYTE  

RWDATA           00000246      03     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD    WRT BYTE  

PURE             000003BD      04     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD  NOWRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

6586. BYTES LEFT IN FREE MEMORY POOL.

22. BYTES OF RECLAIMED MEMORY.

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

75 MLB DIR RDS - 1020 GETS TO DEFINE 45 MACROS. 80 INTER. FILE WRITES. 

