MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (1)      71  RUN IMAGE

   (1)     110  LOGOUT PROCESS

   (1)     153  EXTERNAL COMMAND EXECUTION

   (1)     180  FORCE IMAGE EXIT

   (1)     196  INITIATE IMAGE

   (1)     302  ALLOCATE BUFFER AND BUILD DESCRIPTOR

   (1)     330  COMMAND INTERPRETER EXIT HANDLER

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   1

01                                                                                                                               (1)



                                     0000     1 	.TITLE	MCRIMGEXE - IMAGE EXECUTION MCR COMMAND EXECUTION

                                     0000     2 	.IDENT	/01/

                                     0000     3  

                                     0000     4 ;

                                     0000     5 ; COPYRIGHT (C) 1977

                                     0000     6 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

                                     0000     7 ;

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

                                     0000     9 ; SINGLE COMPUTER SYSTEM AND MAY BE  COPIED ONLY WITH  THE INCLU-

                                     0000    10 ; SION OF  THE  ABOVE  COPYRIGHT NOTICE.  THIS SOFTWARE,  OR  ANY

                                     0000    11 ; OTHER COPIES THEREOF, MAY NOT BE  PROVIDED  OR  OTHERWISE  MADE

                                     0000    12 ; AVAILABLE TO ANY OTHER PERSON EXCEPT  FOR  USE  ON  SUCH SYSTEM

                                     0000    13 ; AND TO  ONE WHO AGREES  TO  THESE LICENSE  TERMS.  TITLE TO AND

                                     0000    14 ; OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.

                                     0000    15 ;

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

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

                                     0000    18 ; EQUIPMENT 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 ; D. N. CUTLER 4-APR-77

                                     0000    24 ;

                                     0000    25 ; IMAGE EXECUTION MCR COMMAND EXECUTION

                                     0000    26 ;

                                     0000    27 ;	EXTERNAL COMMAND EXECUTE

                                     0000    28 ;	RUN IMAGE

                                     0000    29 ;

                                     0000    30 ; MACRO LIBRARY CALLS

                                     0000    31 ;

                                     0000    32  

                                     0000    33 	DEFCMDWRK			;DEFINE WORK AREA OFFSETS

                                     0000    34 	DEFERRCOD			;DEFINE ERROR/STATUS VALUES

                                     0000    35 	DEFPTRDSC			;RESULT PARSE DESCRIPTORS

                                     0000    36 	$CHFDEF				;DEFINE CONDITION ARGLIST OFFSETS

                                     0000    37 	$IHDDEF				;IMAGE HEADER DESCRIPTOR DEFINTITIONS

                                     0000    38 	$PSLDEF				;DEFINE PROCESSOR STATUS FIELDS

                                     0000    39 	$SSDEF				;DEFINE SYSTEM STATUS VALUES

                                     0000    40 	$CLIDEF				;DEFINE COMMAND INTERPRETER VALUES

                                     0000    41  

                                     0000    42 ;

                                     0000    43 ; LOCAL DATA

                                     0000    44 ;

                                     0000    45  

                                 00000000    46 	.PSECT	MCR$ZCODE,BYTE,RD,NOWRT

                                     0000    47 EXTDEFAULT:				;EXTERNAL COMMAND IMAGE DEFAULT STRING

                                 0F' 0000    48 	.BYTE	20$-10$			;LENGTH OF STRING

2E 3A 4D 45 54 53 59 53 24 53 59 53  0001    49 10$:	.ASCII	/SYS$SYSTEM:.EXE/		;

                           45 58 45  000D       

                                     0010    50 20$:					;REF LABEL

                                     0010    51 RUNDEFAULT:				;RUN COMMAND IMAGE DEFAULT STRING

                                 04' 0010    52 	.BYTE	20$-10$			;LENGTH OF STRING

                        45 58 45 2E  0011    53 10$:	.ASCII	/.EXE/			;

                                     0015    54 20$:					;REF LABEL

                                     0015    55 LOGOUTIMG:				;FILENAME TEXT STRING FOR LOGOUT

         54 55 4F 4E 49 47 4F 4C 00' 0015    56 	.ASCIC	\LOGINOUT\		;LOGIN/OUT IMAGE NAME

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   2

01                                                                                                                               (1)



                                 08  0015       

                                     001E    57  

                                     001E    58 ;

                                     001E    59 ; NAMES FOR INDIRECT COMMAND FILE AND THE TERMINAL

                                     001E    60 ;

                                     001E    61  

         54 55 50 4E 49 24 53 59 53  001E    62 SYSINP:	.ASCII	\SYS$INPUT\		;

                           00000009  0027    63 	SYSINPSIZ = . - SYSINP

                                     0027    64  

3A 44 4E 41 4D 4D 4F 43 24 53 59 53  0027    65 SYSCMD:	.ASCII	\SYS$COMMAND:\		;

                           0000000C  0033    66 	SYSCMDSIZ = . - SYSCMD

                                     0033    67 SYSPRINT:				;DEFAULT QUEUE LOGICAL NAME

         54 4E 49 52 50 24 53 59 53  0033    68 	.ASCII	\SYS$PRINT\		;

                           00000009  003C    69 SYSPRTSIZ = . - SYSPRINT		;SIZE OF THAT STRING

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   3

01              RUN IMAGE                                                                                                        (1)



                                     003C    71 	.SBTTL	RUN IMAGE

                                     003C    72 ;+

                                     003C    73 ; MCR$RUN - RUN IMAGE

                                     003C    74 ;

                                     003C    75 ; THIS ROUTINE IS CALLED AS AN INTERNAL COMMAND TO EXECUTE THE RUN MCR COMMAND.

                                     003C    76 ;

                                     003C    77 ; INPUTS:

                                     003C    78 ;

                                     003C    79 ;	R8 = ADDRESS OF SCRATCH BUFFER DESCRIPTOR.

                                     003C    80 ;	R9 = ADDRESS OF SCRATCH STACK.

                                     003C    81 ;	R10 = RESULT PARSE DESCRIPTOR TABLE POINTER.

                                     003C    82 ;	R11 = BASE ADDRESS OF PROCESS WORK AREA.

                                     003C    83 ;	FP = BASE ADDRESS OF COMMAND WORK AREA.

                                     003C    84 ;

                                     003C    85 ; OUTPUTS:

                                     003C    86 ;

                                     003C    87 ;	THE SPECIFED IMAGE IS INITIATED.

                                     003C    88 ;-

                                     003C    89  

                                     003C    90 MCR$RUN::				;RUN IMAGE

                                 AA  003C    91 	BICW	#<PRC_M_DBGQUAL!PRC_M_DBGTRUE>,- ;CLEAR DEBUG QUALIFIER SEEN,

         54 AB       0600 8F         003D    92 		PRC_W_FLAGS(R11)	;AND DEBUG QUALIFIER TRUE FLAGS.

                          7E     7C  0042    93 	CLRQ	-(SP)			;MAKE A SCRATCH BUFFER

                                     0044    94 10$:	GETDVAL				;GET NEXT DESCRIPTOR VALUES

            04            55     91  0047    95 	CMPB	R5,#PTR_K_ENDLINE	;IS THIS THE END OF THE PARAMETERS?

                          1A     13  004A    96 	BEQL	30$			;BR IF YES

            03            55     91  004C    97 	CMPB	R5,#PTR_K_PARAMETR	;IS THIS THE FILE TO RUN?

                          10     13  004F    98 	BEQL	20$			;BR IF YES

                                 A8  0051    99 	BISW	#<PRC_M_DBGQUAL!PRC_M_DBGTRUE>,- ;SET DEBUG QAULIFIER SEEN

         54 AB       0600 8F         0052   100 		PRC_W_FLAGS(R11)	;AND ASSUME QUALIFIER TRUE

            EA            53     E9  0057   101 	BLBC	R3,10$			;BR IF NOT NEQATED

                                     005A   102 	CLRBIT	PRC_V_DBGTRUE,PRC_W_FLAGS(R11) ;SET STATE TO FALSE

                          E3     11  005F   103 	BRB	10$			;

            6E            51     7D  0061   104 20$:	MOVQ	R1,(SP)			;SAVE FILE SPECIFICATION DESCRIPTOR

                          DE     11  0064   105 	BRB	10$			;LOOK FOR MORE

                          06     BA  0066   106 30$:	POPR	#^M<R1,R2>		;GET FILE SPEC OF FILE TO RUN

            53         A5 AF     9E  0068   107 	MOVAB	RUNDEFAULT,R3		;GET ADDRESS OF RUN DEFAULT NAME STRING

                          6F     11  006C   108 	BRB	FORCEXIT		;

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   4

01              LOGOUT PROCESS                                                                                                   (1)



                                     006E   110 	.SBTTL	LOGOUT PROCESS

                                     006E   111 ;+

                                     006E   112 ; MCR$LOGOUT - LOGOUT THE PROCESS

                                     006E   113 ;

                                     006E   114 ; THIS ROUTINE IS CALLED AS AN INTERNAL COMMAND TO EXECUTE THE LOGOUT 

                                     006E   115 ; COMMAND OR TO EFFECT A LOGOUT WHEN END_OF_FILE OCCURS FOR A DETACED JOB.

                                     006E   116 ;

                                     006E   117 ; INPUTS:

                                     006E   118 ;

                                     006E   119 ;	R8 = ADDRESS OF SCRATCH BUFFER DESCRIPTOR.

                                     006E   120 ;	R9 = ADDRESS OF SCRATCH STACK.

                                     006E   121 ;	R10 = RESULT PARSE DESCRIPTOR TABLE POINTER.

                                     006E   122 ;	R11 = BASE ADDRESS OF PROCESS WORK AREA.

                                     006E   123 ;	FP = BASE ADDRESS OF COMMAND WORK AREA.

                                     006E   124 ;

                                     006E   125 ; OUTPUTS:

                                     006E   126 ;

                                     006E   127 ;	THE LOGOUT IMAGE IS INITIATED.

                                     006E   128 ;-

                                     006E   129  

                                     006E   130 MCR$LOGOUT::				;LOGOUT OFF THE PROCESS

            5E       FBC0 CD     9E  006E   131 	MOVAB	WRK_K_LENGTH(FP),SP	;MAKE SURE STACK IS EMPTY

            59            6E     9E  0073   132 	MOVAB	(SP),R9			;SET ADDRESS OF SCRATCH STACK

                                     0076   133 	ALLOCBUF			;ALLOCATE A BUFFER AND A DESCRIPTOR

            58            5E     D0  0079   134 	MOVL	SP,R8			;SET ADDRESS OF BUFFER DESCRIPTOR

         14 AB         08 AB     D1  007C   135 10$:	CMPL	PRC_L_INPRAB(R11),PRC_L_INDINPRAB(R11) ;INDIRECT LEVEL ZERO?

                          05     13  0081   136 	BEQL	20$			;IF EQL YES

                                     0083   137 	UNSTACK				;UNSTACK INDIRECT LEVEL

                          F4     11  0086   138 	BRB	10$			;

                       A8 AF     9F  0088   139 20$:	PUSHAB	SYSPRINT		;ADDRESS OF LOGICAL NAME

                          09     DD  008B   140 	PUSHL	#SYSPRTSIZ		;LENGTH OF LOGICAL NAME

            52            5E     D0  008D   141 	MOVL	SP,R2			;ADDRESS OF DESCRIPTOR FOR LOGICAL NAME

                                     0090   142 	$TRNLOG_S (R2),(R8),(R8),,,#3	;TRANLATE FROM USER TABLE

                          50     DD  00A3   143 	PUSHL	R0			;SAVE STATUS FROM TRANLATE

                                     00A5   144 	$DELLOG_S	TBLFLG=#2	;DELETE ALL OUTSTANDING LOGICAL NAMES

            8E            01     D1  00B2   145 	CMPL	S^#SS$_NORMAL,(SP)+	;DID LOGICAL NAME TRANLATE

                          0F     12  00B5   146 	BNEQ	50$			;IF NO-DO NOT REMAKE THE NAME

                                     00B7   147 	$CRELOG_S #2,(R2),(R8)		;RECREATE THE NAME

            68         84 8F     9A  00C6   148 50$:	MOVZBL	#MSGBUFSIZ,(R8)		;RESET BUFFER LENGTH DESCRIPTOR

            52       FF47 CF     9E  00CA   149 	MOVAB	LOGOUTIMG,R2		;START OF THE COUNTED STRING

            51            82     9A  00CF   150 	MOVZBL	(R2)+,R1		;SET LENGTH

                                     00D2   151 					;FALL INTO IMAGE EXECUTE

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   5

01              EXTERNAL COMMAND EXECUTION                                                                                       (1)



                                     00D2   153 	.SBTTL	EXTERNAL COMMAND EXECUTION

                                     00D2   154 ;+

                                     00D2   155 ; MCR$EXTIMAGE - EXTERNAL COMMAND EXECUTION

                                     00D2   156 ;

                                     00D2   157 ; THIS ROUTINE IS CALLED AS AN INTERNAL COMMAND TO INITIATE EXECUTION OF AN

                                     00D2   158 ; EXTERNAL IMAGE.

                                     00D2   159 ;

                                     00D2   160 ; INPUTS:

                                     00D2   161 ;

                                     00D2   162 ;	R1 = LENGTH OF IMAGE FILE SPECIFICATION.

                                     00D2   163 ;	R2 = ADDRESS OF IMAGE FILE SPECIFICATION.

                                     00D2   164 ;	R8 = ADDRESS OF SCRATCH BUFFER DESCRIPTOR.

                                     00D2   165 ;	R9 = ADDRESS OF SCRATCH STACK.

                                     00D2   166 ;	R10 = RESULT PARSE DESCRIPTOR TABLE POINTER.

                                     00D2   167 ;	R11 = BASE ADDRESS OF PROCESS WORK AREA.

                                     00D2   168 ;	FP = BASE ADDRESS OF COMMAND WORK AREA.

                                     00D2   169 ;

                                     00D2   170 ; OUTPUTS:

                                     00D2   171 ;

                                     00D2   172 ;	THE SPECIFED IMAGE IS INITIATED.

                                     00D2   173 ;-

                                     00D2   174  

                                     00D2   175 MCR$EXTIMAGE::				;EXTERNAL COMMAND EXECUTION

            53       FF2A CF     9E  00D2   176 	MOVAB	EXTDEFAULT,R3		;GET ADDRESS OF DEFAULT NAME STRING

                                 AA  00D7   177 	BICW	#<PRC_M_DBGQUAL!PRC_M_DBGTRUE>,- ;CLEAR DEBUG QUALIFIER SEEN,

         54 AB       0600 8F         00D8   178 		PRC_W_FLAGS(R11)	;AND DEBUG QUALIFIER TRUE FLAGS.

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   6

01              FORCE IMAGE EXIT                                                                                                 (1)



                                     00DD   180 	.SBTTL	FORCE IMAGE EXIT

                                     00DD   181 ;

                                     00DD   182 ; FORCE IMAGE EXIT IF ONE IS ACTIVE

                                     00DD   183 ;

                                     00DD   184 ; INPUTS:

                                     00DD   185 ;

                                     00DD   186 ;	R1 = LENGTH OF IMAGE FILE SPECIFICATION

                                     00DD   187 ;	R2 = ADDRESS OF IMAGE FILE SPECIFICATION

                                     00DD   188 ;	R3 = ADDRESS OF COUNTED ASCII STRING FOR DEFAULT FILE NAME

                                     00DD   189 ;

                                     00DD   190  

                                     00DD   191 FORCEXIT:				;FORCE IMAGE EXIT

                          0E     BB  00DD   192 	PUSHR	#^M<R1,R2,R3>		;SAVE NAME STRING PARAMETERS

                          FF1E'  30  00DF   193 	BSBW	MCR$RUNDOWN		;RUN DOWN PREVIOUS IMAGE AND INDIRECT LEVELS

                          0E     BA  00E2   194 	POPR	#^M<R1,R2,R3>		;RESTORE NAME STRING PARAMETERS

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   7

01              INITIATE IMAGE                                                                                                   (1)



                                     00E4   196 	.SBTTL	INITIATE IMAGE

                                     00E4   197 ;

                                     00E4   198 ; INITIATE AN IMAGE BY ENTERING USER MODE AND THEN SETTING UP THE INITIAL CALL

                                     00E4   199 ; FRAMES AND ESTABLISHING A CATCH-ALL CONDITION HANDLER.

                                     00E4   200 ;

                                     00E4   201 ; INPUTS:

                                     00E4   202 ;

                                     00E4   203 ;	R1 = LENGTH OF IMAGE FILE SPECIFICATION

                                     00E4   204 ;	R2 = ADDRESS OF IMAGE FILE SPECIFICATION

                                     00E4   205 ;	R3 = ADDRESS OF COUNTED ASCII STRING FOR DEFAULT FILE NAME

                                     00E4   206 ;

                                     00E4   207  

                                     00E4   208 	.ENABL	LSB

                                     00E4   209 INITIATE:				;INITIATE IMAGE

            55   00000000'9F     DE  00E4   210 	MOVAL	@#MMG$IMGHDRBUF,R5	;ADDRESS TO RETURN IMAGE HEADER INFORMATION

            65            51     7D  00EB   211 	MOVQ	R1,(R5)			;IMAGE NAME DESCRIPTOR TO IMAGE HEADER BUFFER

            52            83     9A  00EE   212 	MOVZBL	(R3)+,R2		;SIZE OF DEFAULT NAME STRING

         08 A5            52     7D  00F1   213 	MOVQ	R2,8(R5)		;DESCRIPTOR FOR DEFAULT NAME STRING

         54 AB            03     E2  00F5   214 	BBSS	#PRC_V_EXIT,PRC_W_FLAGS(R11),10$ ;IF SET, EXIT HANDLER ESTABLISHED

                          19         00F9       

         74 AB       0208'CF     9E  00FA   215 	MOVAB	W^MCR$EXITHAND,PRC_L_EXTHND(R11) ;SET ADDRESS OF EXIT HANDLER

         7C AB       0080 CB     9E  0100   216 	MOVAB	PRC_L_EXTCOD(R11),PRC_L_EXTPRM(R11) ;SET ADDRESS OF REASON FOR EXIT

                                     0106   217 	$DCLEXH_S PRC_L_EXTBLK(R11)	;DECLARE EXIT HANDLER

            31            50     E9  0110   218 	BLBC	R0,20$			;IF LBC UNSUCCESSFUL EXECUTION

                                     0113   219  

                                     0113   220 ;

                                     0113   221 ; SET UP IMAGE ADDRESS SPACE

                                     0113   222 ;

                                     0113   223  

                                     0113   224 10$:	$IMGACT_S -			;ACTIVATE THE IMAGE

                                     0113   225 		NAME  =(R5),-		;ADDRESS OF FILE NAME DESCRIPTOR

                                     0113   226 		DFLNAM=8(R5),-		;ADDRESS OF DEFAULT NAME DESCRIPTOR

                                     0113   227 		HDRBUF=(R5)		;ADDRESS OF IMAGE HEADER BUFFER

            1F            50     E8  0123   228 	BLBS	R0,30$			;BRANCH IF IT SUCCEEDED

                          50     DD  0126   229 	PUSHL	R0			;SAVE ERROR CODE

                                     0128   230 	$RUNDWN_S	#PSL$C_USER	;RUNDOWN ABORTED IMAGE

                          50   8ED0  0131   231 	POPL	R0			;GET ERROR CODE BACK

            50   00000000'8F     D1  0134   232 	CMPL	#RMS$_FNF,R0		;IMAGE FILE NOT FOUND?

                          07     12  013B   233 	BNEQ	20$			;IF NEQ NO

            50   00038872 8F     D0  013D   234 	MOVL	#CLI$_IMGFNF,R0		;SET IMAGE FILE NOT FOUND

                                 05  0144   235 20$:	RSB				;RETURN WITH STATUS CODE IN R0

                                     0145   236  

                                     0145   237 ;

                                     0145   238 ; RAISE ACCESS LEVEL TO USER

                                     0145   239 ;

                                     0145   240  

         D4 AD            5E     D0  0145   241 30$:	MOVL	SP,WRK_L_SAVSP(FP)	;SAVE CURRENT STACK POINTER

            0F            16     78  0149   242 	ASHL	#PSL$V_PRVMOD,#PSL$C_USER@2+PSL$C_USER,-(SP) ;SET USER PSL

                          7E         014C       

                       59'AF     9F  014D   243 	PUSHAB	B^50$			;SET USER PC

                                     0150   244 MCR$LOW_LIMIT::				;LOW LIMIT OF CONTROL Y/C ADDRESS RANGE

         54 AB            01     E1  0150   245 	BBC	#PRC_V_CNTRLY,PRC_W_FLAGS(R11),40$ ;IF CLR, NO AST PENDING

                          03         0154       

                          FEA8'  31  0155   246 	BRW	MCR$SCNTRLY		;

                                 02  0158   247 40$:	REI				;ENTER USER MODE

                                     0159   248 MCR$HIGH_LIMIT::			;HIGH LIMIT OF CONTROL Y/C ADDRESS RANGE

                                     0159   249  

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   8

01              INITIATE IMAGE                                                                                                   (1)



                                     0159   250 ;

                                     0159   251 ; BUILD TOP LEVEL CALL FRAME

                                     0159   252 ;

                                     0159   253  

                          5C     7C  0159   254 50$:	CLRQ	AP			;CLEAR INITIAL ARGUMENT AND FRAME POINTERS

         5F'AF            00     FB  015B   255 	CALLS	#0,B^60$		;CONSTRUCT TOP LEVEL CALL FRAME

                                     015F   256  

                                     015F   257 ;

                                     015F   258 ; ESTABLISH CATCH-ALL CONDITION HANDLER AND CALL IMAGE

                                     015F   259 ;

                                     015F   260  

                               0000  015F   261 60$:	.WORD	0			;ENTRY MASK

            6D   00000000'9F     9E  0161   262 	MOVAB	@#EXE$CATCH_ALL,(FP)	;ESTABLISH CATCH-ALL HANDLER

                                     0168   263 	$SETEXV_S #2,@#EXE$CATCH_ALL	;ESTABLISH LAST CHANCE HANDLER

         54 AB            0D     E0  017B   264 	BBS	#PRC_V_PAUSE,PRC_W_FLAGS(R11),62$ ;IF PAUSED ASSIGN INPUT TO CMD

                          05         017F       

         52 AB            0E     E1  0180   265 	BBC	#MCR_V_FORCMD,PRC_W_CLIFLAG(R11),65$ ; BR IF NOT DOING FOREIGN CMD

                          22         0184       

                     FE9E CF     9F  0185   266 62$:	PUSHAB	SYSCMD			;ADDRESS OF EQUIVALENCE STRING

                          0C     DD  0189   267 	PUSHL	#SYSCMDSIZ		;ITS LENGTH

                     FE8F CF     9F  018B   268 	PUSHAB	SYSINP			;ADDRESS OF LOGICAL NAME

                          09     DD  018F   269 	PUSHL	#SYSINPSIZ		;AND ITS SIZE

            50            5E     D0  0191   270 	MOVL	SP,R0			;ADDRESS OF DESCRIPTORS

                                     0194   271 	$CRELOG_S #2,(R0),8(R0)		;EQUATE INPUT TO COMMAND

            6E            10     C0  01A4   272 	ADDL	#16,(SP)		;CLEAR THE DESCRIPTORS

            54   00000000'9F     7D  01A7   273 65$:	MOVQ	@#MMG$IMGHDRBUF,R4	;GET IMAGE HEADER DESCRIPTOR

                                     01AE   274  

                                     01AE   275 	ASSUME	CLI$V_DEBUG   EQ 0

                                     01AE   276 	ASSUME	CLI$V_DBGTRU  EQ 1

                                     01AE   277 	ASSUME	PRC_V_DBGTRUE EQ PRC_V_DBGQUAL+1

                                     01AE   278  

                          09     EF  01AE   279 	EXTZV	#PRC_V_DBGQUAL,#2,-	;BUILD PROTOTYPE CLI OPTIONS VALUE BY

         54 AB            02         01B0   280 		PRC_W_FLAGS(R11),-(SP)	;GETTING THE DEBUG QUALIFIER AND STATE

                          7E         01B3       

         54 AB            06     E1  01B4   281 	BBC	#PRC_V_MODE,PRC_W_FLAGS(R11),70$ ;BR IF NOT A BATCH JOB

                          03         01B8       

                                     01B9   282 	SETBIT	CLI$V_BATCH,(SP)	;OR IN THE BATCH BIT IF THIS IS BATCH

         54 AB            07     E1  01BC   283 70$:	BBC	#PRC_V_VERIFY,PRC_W_FLAGS(R11),80$ ;BR IF VERIFY IS CLEAR

                          03         01C0       

                                     01C1   284 	SETBIT	CLI$V_VERIFY,(SP)	;PROPOGATE VERIFY IF TRUE

         14 AB         08 AB     D1  01C4   285 80$:	CMPL	PRC_L_INPRAB(R11),PRC_L_INDINPRAB(R11) ;INDIRECT LEVEL ZERO?

                          03     13  01C9   286 	BEQL	90$			;IF EQL YES

                                     01CB   287 	SETBIT	CLI$V_INDIRECT,(SP)	;PASS INDIRECT NON ZERO FLAG

            6E            18     93  01CE   288 90$:	BITB	#<CLI$M_INDIRECT!CLI$M_BATCH>,(SP) ;COMMANDS COMING FROM FILE?

                          07     13  01D1   289 	BEQL	100$			;BR IF TERMINAL JOB

            6E            02     E1  01D3   290 	BBC	#CLI$V_VERIFY,(SP),100$	;BR IF VERIFY NOT REQUESTED

                          03         01D6       

                                     01D7   291 	SETBIT	CLI$V_VFYINP,(SP)	;INDICATE INPUT VERIFY IS NEEDED

                       20 A4     DD  01DA   292 100$:	PUSHL	IHD$L_LNKFLAGS(R4)	;PASS LINKTIME OPTION FLAGS

            7E            54     7D  01DD   293 	MOVQ	R4,-(SP)		;NEXT TWO PARAMETERS IN USER FRAME

                     0000'CF     9F  01E0   294 	PUSHAB	W^MCR$UTLSERV		;SET ADDRESS OF UTILITY ROUTINE DISPATCHER

            50         02 A4     3C  01E4   295 	MOVZWL	IHD$W_ACTIVOFF(R4),R0	;OFFSET TO ACTIVATION DATA (TRANSFER VECTORS)

            50            54     C0  01E8   296 	ADDL	R4,R0			;ADDRESS OF TRANSFER VECTOR ARRAY

                          60     DF  01EB   297 	PUSHAL	(R0)			;ADDRESS OF TRANSFER VECTOR ARRAY

            90            06     FB  01ED   298 	CALLS	#6,@(R0)+		;CALL IMAGE ENTRY POINT

                 00000000'9F     17  01F0   299 	JMP	@#EXE$EXIT_IMAGE	;

                                     01F6   300 	.DSABL	LSB

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page   9

01              ALLOCATE BUFFER AND BUILD DESCRIPTOR                                                                             (1)



                                     01F6   302 	.SBTTL	ALLOCATE BUFFER AND BUILD DESCRIPTOR

                                     01F6   303 ;+

                                     01F6   304 ; MCR$ALLOCBUF - ALLOCATE BUFFER AND BUILD DESCRIPTOR

                                     01F6   305 ;

                                     01F6   306 ; THIS ROUTINE IS CALLED TO ALLOCATE A MESSAGE BUFFER ON THE STACK AND BUILD

                                     01F6   307 ; A BUFFER DESCRIPTOR FOR THE BUFFER.

                                     01F6   308 ;

                                     01F6   309 ; INPUTS:

                                     01F6   310 ;

                                     01F6   311 ;	NONE.

                                     01F6   312 ;

                                     01F6   313 ; OUTPUTS:

                                     01F6   314 ;

                                     01F6   315 ;	A MESSAGE BUFFER IS ALLOCATED ON THE STACK.

                                     01F6   316 ;

                                     01F6   317 ;	R2 = ADDRESS OF BUFFER DESCRIPTOR.

                                     01F6   318 ;

                                     01F6   319 ;	REGISTERS R3, R4, AND R5 ARE PRESERVED ACROSS CALL.

                                     01F6   320 ;-

                                     01F6   321  

                                     01F6   322 MCR$ALLOCBUF::				;ALLOCATE BUFFER AND BUILD DESCRIPTOR

                          01     BA  01F6   323 	POPR	#^M<R0>			;SAVE RETURN ADDRESS

            5E       FF7C CE     9E  01F8   324 	MOVAB	-MSGBUFSIZ(SP),SP	;ALLOCATE SPACE TO STORE FORMAT STRING

                          6E     9F  01FD   325 	PUSHAB	(SP)			;BUILD OUTPUT BUFFER DESCRIPTOR

            7E         84 8F     9A  01FF   326 	MOVZBL	#MSGBUFSIZ,-(SP)	;

            52            5E     D0  0203   327 	MOVL	SP,R2			;COPY ADDRESS OF OUTPUT BUFFER DESCRIPTOR

                          60     17  0206   328 	JMP	(R0)			;

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page  10

01              COMMAND INTERPRETER EXIT HANDLER                                                                                 (1)



                                     0208   330 	.SBTTL	COMMAND INTERPRETER EXIT HANDLER

                                     0208   331 ;+

                                     0208   332 ; MCR$EXITHAND - COMMAND INTERPRETER EXIT HANDLER

                                     0208   333 ;

                                     0208   334 ; THIS ROUTINE IS ENTERED WHEN A PREVIOUSLY INITIATED IMAGE EXITS. ITS FUNC-

                                     0208   335 ; TION IS TO CLEAN UP THE STACK, SHUTDOWN THE IMAGE, AND RETURN CONTROL TO THE

                                     0208   336 ; ADDRESS SPECIFIED BY THE TOP LONGWORD OF THE STACK.

                                     0208   337 ;

                                     0208   338 ; INPUTS:

                                     0208   339 ;

                                     0208   340 ;	@4(AP) = REASON FOR EXIT.

                                     0208   341 ;

                                     0208   342 ; OUTPUTS:

                                     0208   343 ;

                                     0208   344 ;	THE SAVED FRAME POINTER IS RESTORED, THE STACK IS CLEANED UP, IMAGE

                                     0208   345 ;	SHUT DOWN IS PERFORMED,  AND CONTROL IS RETURNED TO THE ADDRESS SPECIFIED

                                     0208   346 ;	BY THE TOP LONGWORD OF THE STACK.

                                     0208   347 ;

                                     0208   348 ;	R0 = REASON FOR EXIT.

                                     0208   349 ;-

                                     0208   350  

                               0000' 0208   351 	.ENTRY	MCR$EXITHAND,^M<>

            5B   00000000'9F     9E  020A   352 	MOVAB	@#CTL$AG_CLIDATA,R11	;GET ADDRESS OF PROCESS WORK AREA

         54 AB            08     AA  0211   353 	BICW	#PRC_M_EXIT,PRC_W_FLAGS(R11) ;CLEAR EXIT HANDLER ESTABLISHED

            5D         04 AB     D0  0215   354 	MOVL	PRC_L_SAVFP(R11),FP	;RESTORE SAVED FRAME POINTER

                                     0219   355 	SHUTDOWN			;SHUT DOWN IMAGE

                          52     D5  021C   356 	TSTL	R2			;ANY DATA RECORDS SKIPPED?

                          07     13  021E   357 	BEQL	10$			;IF EQL NO

                                     0220   358 	STATUS	SKPDAT			;SET SKIPPED DATA STATUS

                                     0224   359 	ERRMSG				;OUTPUT ERROR MESSAGE

         54 AB            0A     E0  0227   360 10$:	BBS	#PRC_V_DBGTRUE,PRC_W_FLAGS(R11),20$ ;BR IF DEBUG WAS REQUESTED

                          09         022B       

                                     022C   361 	$RUNDWN_S  #PSL$C_USER		;RUN DOWN THE IMAGE

            50         04 BC     D0  0235   362 20$:	MOVL	@4(AP),R0		;RETRIEVE REASON FOR EXIT

            5E         D4 AD     D0  0239   363 	MOVL	WRK_L_SAVSP(FP),SP	;RESTORE SAVED STACK POINTER

                                 05  023D   364 	RSB				;

                                     023E   365  

                                     023E   366 	.END

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page  11

SYMBOL TABLE                                                                                                                     (1)



BIT...         = 00000045            CLI$K_OUTPUT3  = 00000022            CLI$V_MOREINP  = 00000002            

CHF$L_MCHARGLST  00000008            CLI$K_OUTPUT4  = 00000023            CLI$V_MOREVALS = 00000000            

CHF$L_MCH_ARGS   00000000            CLI$K_OUTSPEC  = 00000002            CLI$V_PARMDEF  = 00000003            

CHF$L_MCH_DEPTH  00000008            CLI$K_PARDONE  = 00000003            CLI$V_PARMPRS  = 00000000            

CHF$L_MCH_FRAME  00000004            CLI$K_QDBITS     00000014            CLI$V_PARMREQ  = 00000000            

CHF$L_MCH_SAVR0  0000000C            CLI$K_QUALDEF    00000014            CLI$V_PRITYP   = 00000004            

CHF$L_MCH_SAVR1  00000010            CLI$K_REQDESC    0000001C            CLI$V_QDEXPA   = 00000002            

CHF$L_SIGARGLST  00000004            CLI$K_UTILOPR  = 00000000            CLI$V_QDUSRV   = 00000001            

CHF$L_SIG_ARG1   00000008            CLI$K_VALCONV  = 00000004            CLI$V_QUALEXP  = 00000001            

CHF$L_SIG_ARGS   00000000            CLI$K_WORKAREA   00000080            CLI$V_QUALTRU  = 00000000            

CHF$L_SIG_NAME   00000004            CLI$L_CLIFLAG    00000018            CLI$V_SUBTYP   = 00000000            

CLI$A_ABSACT     00000014            CLI$L_INIARGCNT  00000000            CLI$V_TRMVRBLV = 00000008            

CLI$A_ERRACT     00000004            CLI$L_LINKFLAG   00000014            CLI$V_VERIFY   = 00000002            

CLI$A_FLSACT     00000010            CLI$L_RQVALU     0000000C            CLI$V_VFYINP   = 00000005            

CLI$A_IMGFILED   00000010            CLI$L_USRVAL     00000014            CLI$W_QDVALSIZ   00000004            

CLI$A_IMGHDADR   0000000C            CLI$L_WORKAREA   00000000            CLI$W_RQSIZE     00000008            

CLI$A_PROGXFER   00000004            CLI$M_ABSADR   = 00000002            CLI$W_SERVCOD    00000001            

CLI$A_PRSACT     00000010            CLI$M_ALLOCCUR = 00000001            CLI$_ABFNAM    = 000381B8            

CLI$A_QDVALADR   00000008            CLI$M_BATCH    = 00000008            CLI$_ABKEYW    = 00038000            

CLI$A_QUALST     00000018            CLI$M_CONCATINP= 00000002            CLI$_ABVERB    = 00038008            

CLI$A_RQADDR     0000000C            CLI$M_DBGEXCP  = 00010000            CLI$_BADRET    = 00038198            

CLI$A_TRUACT     0000000C            CLI$M_DBGTRU   = 00000002            CLI$_BADTEXT   = 000381B0            

CLI$A_UTILSERV   00000008            CLI$M_DEBUG    = 00000001            CLI$_BUFOVF    = 00038018            

CLI$B_BITNUM     00000001            CLI$M_DUMMY    = 00000002            CLI$_COMPLX    = 00038020            

CLI$B_QDBLKSIZ   00000000            CLI$M_EXPNAM   = 00000004            CLI$_CONFQUAL  = 00038802            

CLI$B_QDCODE     00000001            CLI$M_INDIRECT = 00000010            CLI$_CREQUEJOB = 0003884A            

CLI$B_QDFLGS     00000002            CLI$M_KEYVALU  = 00000002            CLI$_DEFOVF    = 00038028            

CLI$B_QDSTAT     00000003            CLI$M_LASTVAL  = 00000001            CLI$_DEVALSPL  = 0003885A            

CLI$B_RQFLGS     00000002            CLI$M_MOREINP  = 00000004            CLI$_DEVNOTFOR = 0003887A            

CLI$B_RQINDX     00000001            CLI$M_MOREVALS = 00000001            CLI$_DEVNOTSPL = 00038862            

CLI$B_RQSTAT     00000003            CLI$M_PARMDEF  = 00000008            CLI$_DIRECT    = 00038030            

CLI$B_RQTYPE     00000000            CLI$M_PARMPRS  = 00000001            CLI$_EXPSYN    = 00038038            

CLI$C_QDBITS     00000014            CLI$M_PARMREQ  = 00000001            CLI$_FILOPN    = 00038190            

CLI$C_QUALDEF    00000014            CLI$M_QDEXPA   = 00000004            CLI$_ILLVAL    = 0003883A            

CLI$C_REQDESC    0000001C            CLI$M_QDUSRV   = 00000002            CLI$_IMCHNG    = 00038040            

CLI$C_WORKAREA   00000080            CLI$M_QUALEXP  = 00000002            CLI$_IMGFNF    = 00038872            

CLI$K_ASCIIVAL = 00000041            CLI$M_QUALTRU  = 00000001            CLI$_INSFPRM   = 00038048            

CLI$K_CLISERV  = 00000005            CLI$M_TRMVRBLV = 00000300            CLI$_INVKEY    = 00038178            

CLI$K_ENDPRM1  = 00000030            CLI$M_VERIFY   = 00000004            CLI$_INVQUAL   = 0003880A            

CLI$K_ENDPRM2  = 00000031            CLI$M_VFYINP   = 00000020            CLI$_INVQUALNUM= 0003881A            

CLI$K_ENDPRM3  = 00000032            CLI$Q_QDVALDESC  00000004            CLI$_INVREQTYP = 00038822            

CLI$K_ENDPRM4  = 00000033            CLI$Q_RQDESC     00000008            CLI$_INVRSP    = 00038180            

CLI$K_FILSPEC  = 00000044            CLI$S_PRITYP   = 00000004            CLI$_INVUIC    = 000381A8            

CLI$K_GETCMD   = 00000001            CLI$S_SUBTYP   = 00000004            CLI$_IVCHAR    = 00038050            

CLI$K_GETOPT   = 00000003            CLI$S_TRMVRBLV = 00000002            CLI$_IVDEVTYPE = 0003886A            

CLI$K_GETQUAL  = 00000002            CLI$V_ABSADR   = 00000001            CLI$_IVFNAM    = 000381C0            

CLI$K_INITPRS  = 00000000            CLI$V_ALLOCCUR = 00000000            CLI$_IVKEYW    = 00038060            

CLI$K_INPSPEC  = 00000001            CLI$V_BATCH    = 00000003            CLI$_IVOPER    = 00038068            

CLI$K_INPUT1   = 00000010            CLI$V_CONCATINP= 00000001            CLI$_IVPROT    = 00038070            

CLI$K_INPUT2   = 00000011            CLI$V_DBGEXCP  = 00000010            CLI$_IVQLOC    = 00038078            

CLI$K_INPUT3   = 00000012            CLI$V_DBGTRU   = 00000001            CLI$_IVSYMB    = 00038080            

CLI$K_INPUT4   = 00000013            CLI$V_DEBUG    = 00000000            CLI$_IVVALU    = 00038088            

CLI$K_KEYVAL   = 00000043            CLI$V_DUMMY    = 00000001            CLI$_IVVERB    = 00038090            

CLI$K_KEYWORD  = 00000042            CLI$V_EXPNAM   = 00000002            CLI$_MAXPARM   = 00038098            

CLI$K_NUMERVAL = 00000040            CLI$V_INDIRECT = 00000004            CLI$_MULKEY    = 000381A0            

CLI$K_OUTPUT1  = 00000020            CLI$V_KEYVALU  = 00000001            CLI$_NOATFIL   = 000380A0            

CLI$K_OUTPUT2  = 00000021            CLI$V_LASTVAL  = 00000000            CLI$_NOCCAT    = 000380A8            

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page  12

SYMBOL TABLE                                                                                                                     (1)



CLI$_NOCOMD    = 000380B0            IHD$M_PICIMG   = 00000008            MMG$IMGHDRBUF    ********   X   03   

CLI$_NOKEYW    = 000380B8            IHD$Q_PRIVREQS   00000014            MSGBUFSIZ      = 00000084            

CLI$_NOLIST    = 000380C0            IHD$S_MATCHCTL = 00000003            PRC_B_DEFRADIX   00000092            

CLI$_NOOPTPRS  = 00038842            IHD$V_LNKDEBUG = 00000000            PRC_B_EXMDEPMOD  00000091            

CLI$_NOQUAL    = 000380C8            IHD$V_LNKNOTFR = 00000001            PRC_B_EXMDEPWID  00000090            

CLI$_NORMAL    = 00030001            IHD$V_MATCHCTL = 00000018            PRC_K_DEC      = 00000001            

CLI$_NOTNEG    = 000380D8            IHD$V_NOP0BUFS = 00000002            PRC_K_HEX      = 00000000            

CLI$_NOVALU    = 000380D0            IHD$V_PICIMG   = 00000003            PRC_K_LENGTH     000000A0            

CLI$_NOVALUE   = 0003882A            IHD$W_ACTIVOFF   00000002            PRC_K_OCT      = 00000002            

CLI$_NULFIL    = 000380E0            IHD$W_IMGIDOFF   00000006            PRC_L_CLIWRK0    0000005C            

CLI$_NUMBER    = 000380E8            IHD$W_IMGIOCNT   0000001E            PRC_L_CLIWRK1    00000060            

CLI$_ONCOMD    = 000380F0            IHD$W_IOCHANCNT  0000001C            PRC_L_CLIWRK2    00000064            

CLI$_ONERR     = 000380F8            IHD$W_MAJORID    0000000C            PRC_L_CLIWRK3    00000068            

CLI$_ONEVAL    = 00038158            IHD$W_MINORID    0000000E            PRC_L_CLIWRK4    0000006C            

CLI$_ONLEVL    = 00038100            IHD$W_PATCHOFF   00000008            PRC_L_ERRRAB     00000010            

CLI$_ONOVF     = 00038108            IHD$W_SIZE       00000000            PRC_L_EXMDEPADR  0000008C            

CLI$_OVRFLW    = 00038160            IHD$W_SYMDBGOFF  00000004            PRC_L_EXTARG     00000078            

CLI$_PARMDEL   = 00038110            INITIATE         000000E4 R     03   PRC_L_EXTBLK     00000070            

CLI$_PROC_ID   = 0003FFF1            INPBUFSIZ      = 00000084            PRC_L_EXTCOD     00000080            

CLI$_QUEJOBCRE = 0003FFF9            LOGOUTIMG        00000015 R     03   PRC_L_EXTHND     00000074            

CLI$_REQPRMABS = 00038812            MCR$ALLOCBUF     000001F6 RG    03   PRC_L_EXTPRM     0000007C            

CLI$_RSLOVF    = 00038118            MCR$ERRORMSG     ********   X   03   PRC_L_INDEPTH    00000048            

CLI$_SKPDAT    = 00038120            MCR$EXITHAND     00000208 RG    03   PRC_L_INDFAB     0000001C            

CLI$_SPARE0    = 00038010            MCR$EXTIMAGE     000000D2 RG    03   PRC_L_INDINPRAB  00000014            

CLI$_SPARE1    = 00038058            MCR$GETDVAL      ********   X   03   PRC_L_INDOUTRAB  00000018            

CLI$_STKOVF    = 00038128            MCR$HIGH_LIMIT   00000159 RG    03   PRC_L_INPRAB     00000008            

CLI$_SUBMITERR = 00038852            MCR$LOGOUT       0000006E RG    03   PRC_L_LSTSTATUS  00000094            

CLI$_SYMDEL    = 00038130            MCR$LOW_LIMIT    00000150 RG    03   PRC_L_ONCTLY     0000009C            

CLI$_SYMOVF    = 00038138            MCR$RUN          0000003C RG    03   PRC_L_ONERROR    00000058            

CLI$_UNDFIL    = 00038188            MCR$RUNDOWN      ********   X   03   PRC_L_OUTRAB     0000000C            

CLI$_UNDSYM    = 00038140            MCR$SCNTRLY      ********   X   03   PRC_L_PROCUIC    00000098            

CLI$_UNPROPARM = 00038170            MCR$SHUTDOWN     ********   X   03   PRC_L_SAVAP      00000000            

CLI$_UNPROQUAL = 00038168            MCR$UNSTACK      ********   X   03   PRC_L_SAVFP      00000004            

CLI$_USGOTO    = 00038148            MCR$UTLSERV      ********   X   03   PRC_L_SEVERITY   00000040            

CLI$_VALCNVERR = 00038832            MCR_M_ALPHAN   = 00000002            PRC_L_STACKLM    00000088            

CLI$_VALREQ    = 00038150            MCR_M_DEFALT   = 00000008            PRC_L_STACKPT    00000084            

CMDBUFSIZ      = 000001FC            MCR_M_DELINP   = 00000080            PRC_L_STATUS     00000044            

CTL$AG_CLIDATA   ********   X   03   MCR_M_DOLLARS  = 00000100            PRC_L_SYMBOL     0000004C            

EXE$CATCH_ALL    ********   X   03   MCR_M_ESCAPE   = 00000004            PRC_M_CNTRLY   = 00000002            

EXE$EXIT_IMAGE   ********   X   03   MCR_M_ESCTRM   = 00000200            PRC_M_DBGQUAL  = 00000200            

EXTDEFAULT       00000000 R     03   MCR_M_GLOBAL   = 00000400            PRC_M_DBGTRUE  = 00000400            

FORCEXIT         000000DD R     03   MCR_M_LOWER    = 00000800            PRC_M_DISABL   = 00000004            

GBL...         = 00000000            MCR_M_OPNINP   = 00000040            PRC_M_EXIT     = 00000008            

IHD$B_HDRBLKCNT  00000010            MCR_M_RAD50    = 00000001            PRC_M_GOEOF    = 00000001            

IHD$B_IMGTYPE    00000011            MCR_M_STRSUB   = 00001000            PRC_M_GOTO     = 00000010            

IHD$C_LENGTH     00000028            MCR_V_ALPHAN   = 00000001            PRC_M_HANGUP   = 00001000            

IHD$K_EXE      = 00000001            MCR_V_DEFALT   = 00000003            PRC_M_IND      = 00000020            

IHD$K_LENGTH     00000028            MCR_V_DELINP   = 00000007            PRC_M_MODE     = 00000040            

IHD$K_LIM      = 00000002            MCR_V_DOLLARS  = 00000008            PRC_M_NOCTLY   = 00004000            

IHD$K_MAJORID  = 00003230            MCR_V_ESCAPE   = 00000002            PRC_M_PAUSE    = 00002000            

IHD$K_MINORID  = 00003130            MCR_V_ESCTRM   = 00000009            PRC_M_USRDET   = 00000100            

IHD$L_IDENT      00000024            MCR_V_FORCMD   = 0000000E            PRC_M_VERIFY   = 00000080            

IHD$L_LNKFLAGS   00000020            MCR_V_GLOBAL   = 0000000A            PRC_M_YLEVEL   = 00000800            

IHD$M_LNKDEBUG = 00000001            MCR_V_LOWER    = 0000000B            PRC_Q_ALLOCREG   00000020            

IHD$M_LNKNOTFR = 00000002            MCR_V_OPNINP   = 00000006            PRC_Q_GLOBAL     00000028            

IHD$M_MATCHCTL = 07000000            MCR_V_RAD50    = 00000000            PRC_Q_LABEL      00000030            

IHD$M_NOP0BUFS = 00000004            MCR_V_STRSUB   = 0000000C            PRC_Q_LOCAL      00000038            

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page  13

SYMBOL TABLE                                                                                                                     (1)



PRC_V_CNTRLY   = 00000001            PTR_K_PARMQUAL = 00000001            SS$_DEBUG      = 0000046C            

PRC_V_DBGQUAL  = 00000009            PTR_K_PLUS     = 00000004            SS$_DECOVF     = 000004A4            

PRC_V_DBGTRUE  = 0000000A            PTR_K_QUALVALU = 00000002            SS$_DEVACTIVE  = 000002C4            

PRC_V_DISABL   = 00000002            PTR_K_RPAREN   = 00000006            SS$_DEVALLOC   = 00000840            

PRC_V_EXIT     = 00000003            PTR_K_SLASH    = 00000003            SS$_DEVALRALLOC= 00000641            

PRC_V_GOEOF    = 00000000            PTR_L_DESCR      00000000            SS$_DEVASSIGN  = 00000848            

PRC_V_GOTO     = 00000004            PTR_S_FLAGS    = 00000004            SS$_DEVFOREIGN = 00000064            

PRC_V_HANGUP   = 0000000C            PTR_S_OFFSET   = 0000000C            SS$_DEVICEFULL = 00000850            

PRC_V_IND      = 00000005            PTR_S_TERM     = 00000004            SS$_DEVMOUNT   = 0000006C            

PRC_V_MODE     = 00000006            PTR_S_TYPE     = 00000004            SS$_DEVNOTALLOC= 00000858            

PRC_V_NOCTLY   = 0000000E            PTR_S_VALUE    = 00000008            SS$_DEVNOTMBX  = 00000074            

PRC_V_PAUSE    = 0000000D            PTR_V_EQUAL    = 00000000            SS$_DEVNOTMOUNT= 0000007C            

PRC_V_USRDET   = 00000008            PTR_V_FLAGS    = 00000014            SS$_DEVOFFLINE = 00000084            

PRC_V_VERIFY   = 00000007            PTR_V_NEGATE   = 00000000            SS$_DIRFULL    = 00000860            

PRC_V_YLEVEL   = 0000000B            PTR_V_OFFSET   = 00000008            SS$_DRVERR     = 0000008C            

PRC_W_CLIFLAG    00000052            PTR_V_TERM     = 00000018            SS$_DUPFILENAME= 00000868            

PRC_W_ERRIFI     00000052            PTR_V_TYPE     = 0000001C            SS$_DUPLNAM    = 00000094            

PRC_W_FLAGS      00000054            PTR_V_VALUE    = 00000000            SS$_ENDOFFILE  = 00000870            

PRC_W_INPCHAN    00000050            RMS$_FNF         ********   X   03   SS$_ENDOFTAPE  = 00000878            

PRC_W_ONLEVEL    00000056            RSLBUFSIZ      = 00000180            SS$_ENDOFUSRLBL= 00000970            

PSL$C_EXEC     = 00000001            RUNDEFAULT       00000010 R     03   SS$_EXQUOTA    = 0000001C            

PSL$C_KERNEL   = 00000000            SS$_ABORT      = 0000002C            SS$_EXTIDXFILE = 00000880            

PSL$C_SUPER    = 00000002            SS$_ACCONFLICT = 00000800            SS$_FCPREADERR = 00000888            

PSL$C_USER     = 00000003            SS$_ACCVIO     = 0000000C            SS$_FCPREPSTN  = 00000988            

PSL$M_CM       = 80000000            SS$_ACPVAFUL   = 000002FC            SS$_FCPREWNDERR= 00000890            

PSL$M_CURMOD   = 03000000            SS$_ARTRES     = 00000474            SS$_FCPSPACERR = 00000898            

PSL$M_DV       = 00000080            SS$_ASTFLT     = 0000040C            SS$_FCPWRITERR = 000008A0            

PSL$M_FPD      = 08000000            SS$_BADATTRIB  = 00000034            SS$_FILACCERR  = 0000009C            

PSL$M_FU       = 00000040            SS$_BADCHKSUM  = 00000808            SS$_FILALRACC  = 000000A4            

PSL$M_IPL      = 001F0000            SS$_BADESCAPE  = 0000003C            SS$_FILELOCKED = 000008A8            

PSL$M_IS       = 04000000            SS$_BADFILEHDR = 00000810            SS$_FILENUMCHK = 000008B0            

PSL$M_IV       = 00000020            SS$_BADFILENAME= 00000818            SS$_FILESEQCHK = 000008B8            

PSL$M_PRVMOD   = 00C00000            SS$_BADFILEVER = 00000820            SS$_FILESTRUCT = 000008C0            

PSL$M_SAFBITS  = 000037FF            SS$_BADIMGHDR  = 00000044            SS$_FILNOTACC  = 000000AC            

PSL$M_TBIT     = 00000010            SS$_BADIRECTORY= 00000828            SS$_FILNOTCNTG = 000002AC            

PSL$M_TP       = 40000000            SS$_BADPARAM   = 00000014            SS$_FILNOTEXP  = 000000B4            

PSL$S_CURMOD   = 00000002            SS$_BADSTACK   = 000002B4            SS$_FLTDIV     = 00000494            

PSL$S_IPL      = 00000005            SS$_BEGOFFILE  = 00000938            SS$_FLTOVF     = 0000048C            

PSL$S_PRVMOD   = 00000002            SS$_BLOCKCNTERR= 00000940            SS$_FLTUND     = 0000049C            

PSL$V_CM       = 0000001F            SS$_BREAK      = 00000414            SS$_FORMAT     = 000000BC            

PSL$V_CURMOD   = 00000018            SS$_BUFBYTALI  = 0000030C            SS$_GPTFULL    = 000000C4            

PSL$V_DV       = 00000007            SS$_BUFFEROVF  = 00000601            SS$_GSDFULL    = 000000CC            

PSL$V_FPD      = 0000001B            SS$_BUGCHECK   = 000002A4            SS$_HANGUP     = 000002CC            

PSL$V_FU       = 00000006            SS$_CANCEL     = 00000830            SS$_HEADERFULL = 000008C8            

PSL$V_IPL      = 00000010            SS$_CHANINTLK  = 0000004C            SS$_IDXFILEFULL= 000008D0            

PSL$V_IS       = 0000001A            SS$_CLIFRCEXT  = 00000980            SS$_ILLBLKNUM  = 000000DC            

PSL$V_IV       = 00000005            SS$_CMODSUPR   = 0000041C            SS$_ILLCNTRFUNC= 000000E4            

PSL$V_PRVMOD   = 00000016            SS$_CMODUSER   = 00000424            SS$_ILLEFC     = 000000EC            

PSL$V_TBIT     = 00000004            SS$_COMPAT     = 0000042C            SS$_ILLIOFUNC  = 000000F4            

PSL$V_TP       = 0000001E            SS$_CONTINUE   = 00000001            SS$_ILLLBLAST  = 00000968            

PTR_K_BLANK    = 00000001            SS$_CONTROLC   = 00000651            SS$_ILLPAGCNT  = 000000FC            

PTR_K_COLON    = 00000002            SS$_CONTROLO   = 00000609            SS$_ILLSEQOP   = 000002DC            

PTR_K_COMDQUAL = 00000000            SS$_CONTROLY   = 00000611            SS$_ILLSER     = 00000104            

PTR_K_COMMA    = 00000005            SS$_CREATED    = 00000619            SS$_ILLUSRLBLRD= 00000958            

PTR_K_ENDLINE  = 00000004            SS$_CTRLERR    = 00000054            SS$_ILLUSRLBLWT= 00000960            

PTR_K_LPAREN   = 00000007            SS$_DATACHECK  = 0000005C            SS$_INCVOLLABEL= 0000010C            

PTR_K_PARAMETR = 00000003            SS$_DATAOVERUN = 00000838            SS$_INSFARG    = 00000114            

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page  14

SYMBOL TABLE                                                                                                                     (1)



SS$_INSFMEM    = 00000124            SS$_OPCCUS     = 00000434            WRK_K_LENGTH     FFFFFBC0            

SS$_INSFRAME   = 0000012C            SS$_OPCDEC     = 0000043C            WRK_L_CHARPTR    FFFFFFFC            

SS$_INSFWSL    = 0000011C            SS$_OPINCOMPL  = 000002D4            WRK_L_IMAGE      FFFFFFEC            

SS$_INTDIV     = 00000484            SS$_PAGOWNVIO  = 000001EC            WRK_L_MAXPARM    FFFFFFCC            

SS$_INTOVF     = 0000047C            SS$_PAGRDERR   = 00000444            WRK_L_MINPARM    FFFFFFD0            

SS$_IVADDR     = 00000134            SS$_PARITY     = 000001F4            WRK_L_PAROUT     FFFFFFF0            

SS$_IVCHAN     = 0000013C            SS$_PARTESCAPE = 000001FC            WRK_L_PROMPT     FFFFFFF4            

SS$_IVCHNLSEC  = 0000026C            SS$_PFMBSY     = 00000204            WRK_L_QUABLK     FFFFFFE8            

SS$_IVDEVNAM   = 00000144            SS$_PLHLDR     = 00000404            WRK_L_RSLNXT     FFFFFD40            

SS$_IVGSDNAM   = 0000014C            SS$_PSTFULL    = 0000020C            WRK_L_SAVAP      FFFFFFD8            

SS$_IVLOGNAM   = 00000154            SS$_RADRMOD    = 0000044C            WRK_L_SAVFP      FFFFFFDC            

SS$_IVLOGTAB   = 0000015C            SS$_REJECT     = 00000294            WRK_L_SAVSP      FFFFFFD4            

SS$_IVPROTECT  = 000002F4            SS$_REMOTE     = 00000649            WRK_M_ALL      = 00000001            

SS$_IVQUOTAL   = 00000164            SS$_RESIGNAL   = 00000918            WRK_M_ASK      = 00000100            

SS$_IVSECFLG   = 0000016C            SS$_RESULTOVF  = 00000214            WRK_M_COMMAND  = 00000002            

SS$_IVSECIDCTL = 000002E4            SS$_ROPRAND    = 00000454            WRK_M_CONTINU  = 00000400            

SS$_IVSSRQ     = 00000174            SS$_SECTBLFUL  = 0000021C            WRK_M_EQUAL    = 00000008            

SS$_IVSTSFLG   = 0000017C            SS$_SSFAIL     = 0000045C            WRK_M_IMCHNG   = 00000004            

SS$_IVTIME     = 00000184            SS$_SUBRNG     = 000004AC            WRK_M_QUAL     = 00000010            

SS$_LCKPAGFUL  = 000000D4            SS$_SUPERSEDE  = 00000631            WRK_M_QUOTE    = 00000020            

SS$_LENVIO     = 0000018C            SS$_TAPEPOSLOST= 00000224            WRK_M_STAR     = 00000040            

SS$_LKWSETFUL  = 00000194            SS$_TBIT       = 00000464            WRK_M_TRAILSPC = 00000200            

SS$_MBFULL     = 000008D8            SS$_TIMEOUT    = 0000022C            WRK_M_VERB     = 00000080            

SS$_MBTOOSML   = 0000019C            SS$_TOOMANYVER = 00000990            WRK_Q_IOSB       FFFFFFE0            

SS$_MCHECK     = 000002BC            SS$_TOOMUCHDATA= 0000029C            WRK_V_ALL      = 00000000            

SS$_MEDOFL     = 000001A4            SS$_UNASEFC    = 00000234            WRK_V_ASK      = 00000008            

SS$_MSGNOTFND  = 00000621            SS$_UNSAFE     = 0000023C            WRK_V_COMMAND  = 00000001            

SS$_MTLBLLONG  = 00000304            SS$_UNWIND     = 00000920            WRK_V_CONTINU  = 0000000A            

SS$_MUSTCLOSEFL= 00000948            SS$_UNWINDING  = 00000928            WRK_V_EQUAL    = 00000003            

SS$_NOAQB      = 00000314            SS$_VASFULL    = 00000244            WRK_V_IMCHNG   = 00000002            

SS$_NODATA     = 000001AC            SS$_VECINUSE   = 0000024C            WRK_V_QUAL     = 00000004            

SS$_NOHANDLER  = 000008F8            SS$_VOLINV     = 00000254            WRK_V_QUOTE    = 00000005            

SS$_NOHOMEBLK  = 000008E0            SS$_WAITUSRLBL = 00000950            WRK_V_STAR     = 00000006            

SS$_NOIOCHAN   = 000001B4            SS$_WASCLR     = 00000001            WRK_V_TRAILSPC = 00000009            

SS$_NOLINKS    = 0000027C            SS$_WASECC     = 00000639            WRK_V_VERB     = 00000007            

SS$_NOLOGNAM   = 000001BC            SS$_WASSET     = 00000009            WRK_W_FLAGS      FFFFFFFA            

SS$_NOMBX      = 00000274            SS$_WRITLCK    = 0000025C            WRK_W_LOCFLG     FFFFFFF8            

SS$_NOMOREFILES= 00000930            SS$_WRONGACP   = 0000031C            _$$_           = 00000048            

SS$_NONEXDRV   = 000001C4            SYS$CRELOG       ********   X   03   

SS$_NONEXPR    = 000008E8            SYS$DCLEXH       ********   X   03   

SS$_NONLOCAL   = 000008F0            SYS$DELLOG       ********   X   03   

SS$_NOPRIV     = 00000024            SYS$IMGACT       ********   X   03   

SS$_NORMAL     = 00000001            SYS$RUNDWN       ********   X   03   

SS$_NOSIGNAL   = 00000900            SYS$SETEXV       ********   X   03   

SS$_NOSOLICIT  = 00000284            SYS$TRNLOG       ********   X   03   

SS$_NOSUCHDEV  = 00000908            SYSCMD           00000027 R     03   

SS$_NOSUCHFILE = 00000910            SYSCMDSIZ      = 0000000C            

SS$_NOSUCHNODE = 0000028C            SYSINP           0000001E R     03   

SS$_NOSUCHSEC  = 00000978            SYSINPSIZ      = 00000009            

SS$_NOTAPEOP   = 00000264            SYSPRINT         00000033 R     03   

SS$_NOTFILEDEV = 000001CC            SYSPRTSIZ      = 00000009            

SS$_NOTINTBLSZ = 000001D4            WRK_AB_BUFFER    FFFFFD44            

SS$_NOTLABELMT = 000001DC            WRK_AG_RESULT    FFFFFBC0            

SS$_NOTMODIFIED= 00000659            WRK_B_CMDFLG     FFFFFFC9            

SS$_NOTNETDEV  = 000002EC            WRK_B_CURADX     FFFFFFCA            

SS$_NOTRAN     = 00000629            WRK_B_PARMCNT    FFFFFFCB            

SS$_NOTSQDEV   = 000001E4            WRK_B_VERBTYP    FFFFFFC8            

MCRIMGEXE       - IMAGE EXECUTION MCR COMMAND EXECUTION          22-AUG-1978 01:41:31   VAX-11 MACRO X0.3-11               Page  15

PROGRAM SECTION SYNOPSIS                                                                                                         (1)







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

MCR$ZCODE        0000023E      03     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD  NOWRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

3910. BYTES LEFT IN FREE MEMORY POOL.

2770. BYTES OF RECLAIMED MEMORY.

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

59 MLB DIR RDS - 1028 GETS TO DEFINE 38 MACROS. 78 INTER. FILE WRITES. 

