RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (1)      40  DECLARATIONS

   (1)      61  RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE

   (2)     264  RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLET

   (3)     427  RM$CHKAST  -  CHECK FOR ASTS INHIBITED

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   1

013                                                                                                                              (1)



                                     0000     1 	$BEGIN	RM0STALL,013,$RMS0,<STALL FOR I/O COMPLETION>,<NOWRT,QUAD>

                                     0000     2 ; COPYRIGHT (C) 1977

                                     0000     3 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

                                     0000     4 ;

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

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

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

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

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

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

                                     0000    11 ; REMAIN IN DEC.

                                     0000    12 ;

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

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

                                     0000    15 ; CORPORATION.

                                     0000    16 ;

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

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

                                     0000    19 ;

                                     0000    20 ;++

                                     0000    21 ; FACILITY: RMS32

                                     0000    22 ;

                                     0000    23 ; ABSTRACT:

                                     0000    24 ;		THIS MODULE INCLUDES THE VARIOUS ROUTINES TO

                                     0000    25 ;		HANDLE REQUIRED I/O STALLS AND THE RESTARTING

                                     0000    26 ;		OF A THREAD UPON I/O COMPLETION.

                                     0000    27 ;

                                     0000    28 ; ENVIRONMENT:

                                     0000    29 ;		STAR PROCESSOR RUNNING STARLET EXEC.

                                     0000    30 ;

                                     0000    31 ; AUTHOR: L F LAVERDURE,	 CREATION DATE: 4-FEB-77

                                     0000    32 ;

                                     0000    33 ; MODIFIED BY:

                                     0000    34 ;

                                     0000    35 ;	L F LAVERDURE,   14-JUN-78  18:36

                                     0000    36 ;			ADD AST SERVICE ROUTINE FOR RAH/WHB AST

                                     0000    37 ; 01	- 

                                     0000    38 ;--

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   2

013             DECLARATIONS                                                                                                     (1)



                                     0000    40 	.SBTTL	DECLARATIONS

                                     0000    41 ;

                                     0000    42 ; INCLUDE FILES:

                                     0000    43 ;

                                     0000    44 ; MACROS:

                                     0000    45 ;

                                     0000    46 	$IFBDEF

                                     0000    47 	$IRBDEF

                                     0000    48 	$ASBDEF

                                     0000    49 	$FABDEF

                                     0000    50 	$RABDEF

                                     0000    51 	$BDBDEF

                                     0000    52 	$PIODEF

                                     0000    53 	$IMPDEF

                                     0000    54 	$RMSDEF

                                     0000    55 	.LIST MEB

                                     0000    56 ;

                                     0000    57 ; EQUATED SYMBOLS

                                     0000    58 ;

                           00000020  0000    59 	BKP=IRB$L_BKPBITS*8		; BIT OFFSET TO BOOKKEEPING BITS

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   3

013             RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE                                                                    (1)



                                     0000    61 	.SBTTL RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE

                                     0000    62 ;++

                                     0000    63 ; FUNCTIONAL DESCRIPTION:

                                     0000    64 ;

                                     0000    65 ; THIS ROUTINE FIRST CHECKS IF AN ASB (ASYNCHRONOUS CONTEXT

                                     0000    66 ; BLOCK) EXISTS, AND IF NOT, PERFORMS THE FOLLOWING FUNCTIONS:

                                     0000    67 ;

                                     0000    68 ;	1.  ALLOCATES AN ASB, SAVING ITS ADDRESS IN THE 

                                     0000    69 ;	    IFAB/IRAB

                                     0000    70 ;	2.  IF THIS IS AN ASYCHRONOUS RAB OPERATION, COPIES THE

                                     0000    71 ;	    ARGUMENT LIST INTO THE ASB, CHANGES THE ARGLIST 

                                     0000    72 ;	    POINTER TO POINT TO THE SAVED COPY, AND SETS THE

                                     0000    73 ;	    STATUS CODE TO RMS$_PENDING

                                     0000    74 ;	3.  IF NOT AN ASYCHRONOUS RAB OPERATION, 

                                     0000    75 ;	    SETS THE STATUS CODE TO RMS$_STALL

                                     0000    76 ;

                                     0000    77 ; THE ROUTINE THEN SAVES REGISTERS R4 THRU R11, THE STACK ALONG

                                     0000    78 ; WITH THE RETURN PC, AND THE STACK SIZE IN THE ASB.

                                     0000    79 ;

                                     0000    80 ; FINALLY THE ROUTINE CHECKS FOR RUNNING AT EXEC AST LEVEL,

                                     0000    81 ; AND IF SO, MERELY RETURNS (I.E., IT EXITS FROM THE AST), OTHERWISE

                                     0000    82 ; IT RE-ENABLES ASTS, SETS THE STATUS CODE INTO R0, AND RETURNS TO THE

                                     0000    83 ; RMS USER POSSIBLY WAITING AT USER'S ACCESS MODE).

                                     0000    84 ;

                                     0000    85 ;	RETURN SEQUENCE DEPENDS UPON FOLLOWING REGISTERS NOT BEING

                                     0000    86 ;	DESTROYED BY THE RETURN THRU THE CHANGE MODE DISPATCHER TO

                                     0000    87 ;	THE RMS SYNCHRONIZATION CODE:

                                     0000    88 ;

                                     0000    89 ;		R8	STRUCTURE ADDRESS

                                     0000    90 ;		R4	$WAIT TYPE FLAG (0=SAME RAB, 1=DIFFERENT RAB)

                                     0000    91 ;		R3	EFN TO SYNCHRONIZE ON

                                     0000    92 ;

                                     0000    93 ; CALLING SEQUENCE:

                                     0000    94 ;

                                     0000    95 ;	BSBW	RM$STALL

                                     0000    96 ;

                                     0000    97 ; INPUT PARAMETERS:

                                     0000    98 ;

                                     0000    99 ;	R11	IMPURE AREA ADDRESS

                                     0000   100 ;	R9	IFAB/IRAB ADDRESS

                                     0000   101 ;

                                     0000   102 ; IMPLICIT INPUTS:

                                     0000   103 ;

                                     0000   104 ; THE CONTENTS OF THE IFAB/IRAB AND IMPURE AREA.

                                     0000   105 ;

                                     0000   106 ; OUTPUT PARAMETERS:

                                     0000   107 ;

                                     0000   108 ; THIS ROUTINE DOES NOT RETURN DIRECTLY TO THE CALLER,

                                     0000   109 ; EXITING FROM RMS INSTEAD. RETURN OCCURS VIA THE ROUTINE

                                     0000   110 ; RM$STALLAST, WHICH IS ENTERED VIA THE AST SIGNALING THE

                                     0000   111 ; COMPLETION OF THE I/O BEING AWAITED BY RM$STALL. UPON

                                     0000   112 ; RETURN TO THE CALLER HIS ENTIRE CONTEXT WITH THE EXCEPTION OF

                                     0000   113 ; R0 THRU R3 IS RESTORED.

                                     0000   114 ;

                                     0000   115 ; IMPLICIT OUTPUTS:

                                     0000   116 ;

                                     0000   117 ;	AN ASB IS ALLOCATED, IF REQUIRED, AND FILLED IN.

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   4

013             RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE                                                                    (1)



                                     0000   118 ;	THE RMS EVENT FLAG MAY BE CLEARED.

                                     0000   119 ;

                                     0000   120 ; COMPLETION CODES:

                                     0000   121 ;

                                     0000   122 ;	IF RETURNING TO CALLER OF RMS, R0 WILL BE SET TO

                                     0000   123 ; 	EITHER RMS$_PENDING (ASYNC) OF RMS$_STALL (SYNC).

                                     0000   124 ;	IF RMS$_STALL, THIS CODE IS INTERCEPTED BY RMS

                                     0000   125 ;	CODE RUNNING IN THE CALLER'S MODE WHICH AWAITS THE

                                     0000   126 ;	COMPLETION OF THE RMS OPERATION.

                                     0000   127 ;

                                     0000   128 ;	IF EXITING FROM AN AST, R0 IS UNDEFINED.

                                     0000   129 ;

                                     0000   130 ; SIDE EFFECTS:

                                     0000   131 ;

                                     0000   132 ; RMS ASTS ARE REENABLED.

                                     0000   133 ;

                                     0000   134 ;--

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   5

013             RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE                                                                    (1)



                                     0000   136 ;++

                                     0000   137 ;

                                     0000   138 ;  NOTE: THE FOLLOWING CODE IS NOT AN ENTRY POINT INTO THIS ROUTINE

                                     0000   139 ;

                                     0000   140 ;  MUST ALLOCATE AN ASB FOR A STALLED FAB OPERATION.

                                     0000   141 ;  POINT R11 TO PIO SEGMENT SO THAT IF A FREE PAGE IS REQURED IT WILL BE

                                     0000   142 ;  ALLOCATED THERE.

                                     0000   143 ;

                                     0000   144 ;--

                                     0000   145 STALLAL:

                                     0000   146 	$TSTPT	STALLAL

                 00000200'9F     D6  0000       		INCL	@#PIO$GL_FMLH+512+TPT$L_STALLAL

                          5B     DD  0006   147 	PUSHL	R11				; SAVE IMPURE AREA ADDR

            5B   00000000'9F     DE  0008   148 	MOVAL	@#PIO$GW_PIOIMPA,R11		; POINT TO PROCESS I/O SEGMENT

            51            5B     D0  000F   149 	MOVL	R11,R1				; ALLOCATE SPACE IN CONTROL PAGE

            52            1C     9A  0012   150 	MOVZBL	#ASB$C_BLN_FAB/4,R2		; SIZE REQUIRED

                          FFE8'  30  0015   151 	BSBW	RM$GETBLK			; GO ALLOCATE SPACE (R1=ADDR)

            5B            8E     D0  0018   152 	MOVL	(SP)+,R11			; RESTORE IMPURE AREA ADDR

            09            50     E9  001B   153 	BLBC	R0,ERRDME

            52            51     D0  001E   154 	MOVL	R1,R2				; COPY ADDRESS TO RIGHT REG

         14 A9            51     D0  0021   155 	MOVL	R1,IFB$L_ASBADDR(R9)		; SAVE THE ASB ADDRESS

                          41     11  0025   156 	BRB	SYNCOP				; JOIN SYNC OPERATION CODE

                                     0027   157 ;++

                                     0027   158 ;

                                     0027   159 ; COULDN'T ALLOCATE SPACE FOR AN ASB

                                     0027   160 ; 

                                     0027   161 ;--

                                     0027   162 ERRDME:	RMSTBUG	FTL$_ASBALLFAIL

                                     0027       	.SAVE

                                 000000AC       	.PSECT	$ABS$,ABS

                           00000000  00AC       	.=0

                                 00000027       	.RESTORE

                          FFD6'  30  0027       		BSBW	RM$BUG

                                 F9  002A       		.BYTE	FTL$_ASBALLFAIL

                                     002B   163 ;++

                                     002B   164 ;

                                     002B   165 ; SAVE ARGLIST FOR ASYNC RAB OPERATION (FIRST STALL ONLY)

                                     002B   166 ;

                                     002B   167 ;--

                                     002B   168 ASYNCOP:

            5C         18 A9     D0  002B   169 	MOVL	IRB$L_ARGLST(R9),AP		; RESTORE ARGLIST ADDR

                                     002F   170 						; (NOTE: ALREADY PROBED)

            51            6C     9A  002F   171 	MOVZBL	(AP),R1				; GET ARG COUNT

            03            51     91  0032   172 	CMPB	R1,#3				; AT MOST 3

                          03     1B  0035   173 	BLEQU	5$				; BRANCH IF O.K.

            51            03     D0  0037   174 	MOVL	#3,R1				; SO WE CUT BACK TO 3

         18 A9            52     D0  003A   175 5$:	MOVL	R2,IRB$L_ARGLST(R9)		; POINT TO SAVED ARG LIST

            82            8C     D0  003E   176 10$:	MOVL	(AP)+,(R2)+			; COPY ARGLIST

            FA            51     F4  0041   177 	SOBGEQ	R1,10$

            5C   00018009 8F     D0  0044   178 	MOVL	#RMS$_PENDING,AP		; ASYNC STATUS CODE

            52         14 A9     D0  004B   179 	MOVL	IRB$L_ASBADDR(R9),R2		; RESTORE ASB ADDRESS

                          1C     11  004F   180 	BRB	CTXSAV

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   6

013             RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE                                                                    (1)



                                     0051   182 ;++

                                     0051   183 ;

                                     0051   184 ;  ENTRY POINT FOR THIS ROUTINE

                                     0051   185 ;

                                     0051   186 ;--

                                     0051   187 RM$STALL::

                                     0051   188 	$TSTPT	STALL

                 00000200'9F     D6  0051       		INCL	@#PIO$GL_FMLH+512+TPT$L_STALL

            7E            54     7D  0057   189 	MOVQ	R4,-(SP)			; SAVE R4,R5

            52         14 A9     D0  005A   190 	MOVL	IFB$L_ASBADDR(R9),R2		; GET ASB ADDRESS

                          A0     13  005E   191 	BEQL	STALLAL				; AND BRANCH IF NO ASB EXISTS

                                     0060   192 ;

                                     0060   193 ; CHECK FOR ASYNCHRONOUS RAB OPERATION AND IF SO COPY ARGLIST INTO THE ASB

                                     0060   194 ;

                                     0060   195 	ASSUME	IMP$W_RMSSTATUS EQ 0

            6B            01     E0  0060   196 	BBS	#IMP$V_AST,(R11),CTXSAV		; BRANCH IF AT AST LEVEL

                          09         0063       

                                     0064   197 	ASSUME	IFB$V_ASYNC EQ IRB$V_ASYNC

            69            23     E0  0064   198 	BBS	#IRB$V_ASYNC,(R9),ASYNCOP	; BRANCH IF ASYNC OPERATION

                          C3         0067       

                                     0068   199 ;

                                     0068   200 ; SYNCHRONOUS OPERATION FIRST STALL  -  SET STALL I/O STATUS CODE

                                     0068   201 ;

                                     0068   202 SYNCOP:	RMSSUC	STALL,AP			; I/O STALL STATUS CODE

            5C       8001 8F     3C  0068       		MOVZWL	#<RMS$_STALL&^XFFFF>,AP

                                     006D   203 ;++

                                     006D   204 ;

                                     006D   205 ; SAVE STACK SIZE, REGISTERS, AND STACK (INCLUDING RETURN PC)

                                     006D   206 ;

                                     006D   207 ;--

         14 AB            5E     C3  006D   208 CTXSAV:	SUBL3	SP,IMP$L_SAVED_SP(R11),R0	; GET STACK SIZE

                          50         0071       

                           00000008  0072   209 	.IF NE $$RMSTEST&$$RMS_TBUGCHK

                                     0072   210 ;

                                     0072   211 ;  VERIFY STACK FITS INTO ASB

                                     0072   212 ;

                                     0072   213 	ASSUME	IRB$C_BID&1 EQ 0

                                     0072   214 	ASSUME	IFB$C_BID&1 EQ 1

                                     0072   215 	ASSUME	IRB$B_BID EQ IFB$B_BID

            09         08 A9     E9  0072   216 	BLBC	IRB$B_BID(R9),10$		; BRANCH IF STRUCT IS IRAB

   0000004C 8F            50     D1  0076   217 	CMPL	R0,#<ASB$C_BLN_FAB-16-<5*4>>	; DOES STACK FIT?

                          08     11  007D   218 	BRB	20$				; CONTINUE TEST BELOW

            51         24 A240   9E  007F   219 10$:	MOVAB	ASB$L_REGS+<5*4>(R2)[R0],R1	; COMPUTE END ADDR STACK SAVE AREA

            59            51     D1  0084   220 	CMPL	R1,R9				; MUST BE LEQ IRAB ADDR SINCE

                                     0087   221 						; ASB IMMEDIATELY PRECEEDS IT

                          40     1A  0087   222 20$:	BGTRU	ERRBUG				; BRANCH IF BAD

                                     0089   223 	.ENDC

         02 A2            50     90  0089   224 	MOVB	R0,ASB$B_STKSIZ(R2)		; SAVE THE SIZE

            52            10     C0  008D   225 	ADDL2	#ASB$L_REGS,R2			; MOVE PAST ARG LIST

            82            56     D0  0090   226 	MOVL	R6,(R2)+			; SAVE R6

            82            57     7D  0093   227 	MOVQ	R7,(R2)+			; SAVE R7 & R8

                                     0096   228 						; NOTE: R9 SAVED AS AST PARAMETER

            82            5A     7D  0096   229 	MOVQ	R10,(R2)+			; SAVE R10 & R11

            6E            50     28  0099   230 	MOVC3	R0,(SP),(R2)			; COPY THE STACK INCLUDING

                          62         009C       

                                     009D   231 						; RETURN PC

            6B            01     E4  009D   232 	BBSC	#IMP$V_AST,(R11),RETURN		; CLEAR AT AST LEVEL AND BRANCH

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   7

013             RM$STALL  -  STALL FOR I/O COMPLETION ROUTINE                                                                    (1)



                          1C         00A0       

                                     00A1   233 						; IF REALLY THERE (JUST RETURN)

            69            23     E0  00A1   234 	BBS	#IRB$V_ASYNC,(R9),30$		; BRANCH IF ASYNCHRONOUS I/O

                          0D         00A4       

                                     00A5   235 	ASSUME	IRB$B_EFN EQ IFB$B_EFN

            53         0B A9     9A  00A5   236 	MOVZBL	IRB$B_EFN(R9),R3		; SET EVENT FLAG ON WHICH TO WAIT

                          07     12  00A9   237 	BNEQ	30$				; BRANCH IF NON-ZERO (NOT RAH/WBH)

                                     00AB   238 	ASSUME	IFB$V_ASYNC EQ IRB$V_ASYNC

                                     00AB   239 	ASSUME	IFB$V_ASYNCWAIT EQ IRB$V_ASYNCWAIT

                                 88  00AB   240 	BISB2	#<1@<IRB$V_ASYNC-BKP>>!<1@<IRB$V_ASYNCWAIT-BKP>>,-

         04 A9            18         00AC   241 		IRB$L_BKPBITS(R9)		; SHOW WAITING ON ASYNC EFN

            53            1E     D0  00AF   242 	MOVL	#IMP$C_ASYEFN,R3		; AND WAIT ON IT

                                     00B2   243 30$:

                                     00B2   244 ;++

                                     00B2   245 ;

                                     00B2   246 ;  AT NON-AST LEVEL  -  RE-ENABLE ASTS 

                                     00B2   247 ;  ENTRY HERE FROM $WAIT WITH AP=STATUS, R8=RAB ADDRESS, R4=$WAIT TYPE FLAG,

                                     00B2   248 ;			      R3=EFN

                                     00B2   249 ;--

                                     00B2   250 RM$ENBAST::

   00000000'9F            00     E5  00B2   251 	BBCC	#PIO$V_INHAST,@#PIO$GW_STATUS,ENBAST	; CLEAR AST INHIBIT

                          04         00B9       

                                     00BA   252 							; BRANCHING IF CLEAR

            50            5C     D0  00BA   253 SETSTS:	MOVL	AP,R0				; RESTORE STATUS CODE

                                 04  00BD   254 RETURN:	RET					; EXIT RMS

                                     00BE   255 ENBAST:	$SETAST_S	#1			; MUST RE-ENABLE ASTS

                          01     DD  00BE       		PUSHL	#1

   00000000'GF            01     FB  00C0       		CALLS	#1,G^SYS$SETAST

                          F1     11  00C7   256 	BRB	SETSTS

                                     00C9   257 ;++

                                     00C9   258 ;

                                     00C9   259 ; NOT ENOUGH SPACE IN ASB FOR STACK

                                     00C9   260 ;

                                     00C9   261 ;--

                                     00C9   262 ERRBUG:	RMSTBUG	FTL$_STKTOOBIG

                          FF34'  30  00C9       		BSBW	RM$BUG

                                 FE  00CC       		.BYTE	FTL$_STKTOOBIG

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   8

013             RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLET                                                                  (2)



                                     00CD   264 	.SBTTL RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLETE

                                     00CD   265 ;++

                                     00CD   266 ; FUNCTIONAL DESCRIPTION:

                                     00CD   267 ;

                                     00CD   268 ; THIS ROUTINE IS ENTERED AS A RESULT OF AN AST DELIVERY FOR I/O

                                     00CD   269 ; COMPLETION.  ITS FUNCTION IS TO RESTART THE ASSOCIATED

                                     00CD   270 ; THREAD WHICH STALLED AS A RESULT OF CALLING RM$STALL.  THE

                                     00CD   271 ; FOLLOWING PROCESSING IS PERFORMED:

                                     00CD   272 ;

                                     00CD   273 ;	1. CHECKS FOR ASTS INHIBITED, AND IF SO DISABLES ASTS,

                                     00CD   274 ;	   REDECLARES THE CURRENT AST, SETS A FLAG TO CAUSE

                                     00CD   275 ;	   ASTS TO BE RE-ENABLED, AND EXITS.

                                     00CD   276 ;	2. OTHERWISE, RESTORES R9 (IFAB OR IRAB ADDRESS) FROM

                                     00CD   277 ;	   THE AST PARAMETER VALUE, CHECKING FOR A VALID IFAB

                                     00CD   278 ;	   OR IRAB.

                                     00CD   279 ;	3. THE ASB ADDRESS IS RETRIEVED AND THE SAVED

                                     00CD   280 ;	   REGISTERS (R4-R11) AND STACK ARE RESTORED.

                                     00CD   281 ;	4. THE USER STRUCTURE (FAB OR RAB) IS REPROBED.

                                     00CD   282 ;	5. THE INDICATORS IMP$L_SAVED_SP AND IMP$V_AST ARE SET

                                     00CD   283 ;	   APPROPRIATELY

                                     00CD   284 ;	6. RETURN IS MADE TO THE ROUTINE THAT CALLED RM$STALL

                                     00CD   285 ;	   WITH NEARLY FULL CONTEXT RESTORED (R0-R3 AND AP ARE

                                     00CD   286 ;	   DESTROYED, SECONDARY USER STRUCTURES MUST BE

                                     00CD   287 ;	   REPROBED, ABSOLUTE STACK ADDRESSES ARE DIFFERENT)

                                     00CD   288 ;

                                     00CD   289 ; CALLING SEQUENCE:

                                     00CD   290 ;

                                     00CD   291 ;	ENTERED AT RM$STALLAST VIA AN AST.

                                     00CD   292 ;	ALTERNATE ENTRY AT RM$RAHWBHAST FOR READ AHEAD/WRITE BEHIND VIA AST

                                     00CD   293 ;	ALTERNATE ENTRY AT RM$THREADGO WITH R9 ALREADY SET (FOR MULTI BUFFERING).

                                     00CD   294 ;

                                     00CD   295 ; INPUT PARAMETERS:

                                     00CD   296 ;

                                     00CD   297 ;	ASTPRM	- THE IFAB OR IRAB ADDRESS

                                     00CD   298 ;	(FOR RM$RAHWBHAST ASTPRM = BDB ADDRESS)

                                     00CD   299 ;

                                     00CD   300 ; IMPLICIT INPUTS:

                                     00CD   301 ;

                                     00CD   302 ;	THE CONTENTS OF THE IFAB OR IRAB AND RELATED STRUCTURES.

                                     00CD   303 ;

                                     00CD   304 ; OUTPUT PARAMETERS:

                                     00CD   305 ;

                                     00CD   306 ;	R4-R11	CONTENTS BEFORE STALL

                                     00CD   307 ;	SP	ADDR OF STACK HAVING SAME CONTENTS AS BEFORE STALL

                                     00CD   308 ;	PC	RESTORED TO RETURN IN LINE AFTER CALL TO RM$STALL

                                     00CD   309 ;	R1-R3,AP DESTROYED

                                     00CD   310 ;	R0	SET TO CONTENTS OF 1ST WORD OF I/O STATUS BLOCK

                                     00CD   311 ;

                                     00CD   312 ; IMPLICIT OUTPUTS:

                                     00CD   313 ;

                                     00CD   314 ;	IMP$V_AST		SET

                                     00CD   315 ;	IMP$L_SAVED_SP		SET APPROPRIATELY FOR NEW STACK

                                     00CD   316 ;

                                     00CD   317 ; COMPLETION CODES:

                                     00CD   318 ;

                                     00CD   319 ;	NONE

                                     00CD   320 ;

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page   9

013             RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLET                                                                  (2)



                                     00CD   321 ; SIDE EFFECTS:

                                     00CD   322 ;

                                     00CD   323 ;	RUNNING AT AST LEVEL.

                                     00CD   324 ;	SECONDARY USER STRUCTURES REQUIRE RE-PROBING.

                                     00CD   325 ;	ABSOLUTE STACK ADDRESSES DIFFERENT.

                                     00CD   326 ;

                                     00CD   327 ;--

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  10

013             RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLET                                                                  (2)



                                     00CD   329 ;++

                                     00CD   330 ;

                                     00CD   331 ; ENTRY HERE VIA AST FOR RAH/WBH IO COMPLETION

                                     00CD   332 ;

                                     00CD   333 ;--

                                     00CD   334 	.ALIGN	QUAD

                                     00D0   335 	$ENTRY	RM$RAHWBHAST,^/^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>/

                                 000000D0       	.PSECT	$RMS0,GBL,NOWRT,QUAD

                                     00D0       RM$RAHWBHAST::

                               0FFC  00D0       		.WORD	^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>

                                     00D2   336 

            54         04 AC     D0  00D2   337 	MOVL	4(AP),R4			; GET BDB ADDR (ASTPRM)

         0A A4            06     E3  00D6   338 	BBCS	#BDB$V_AST_DCL,BDB$B_FLGS(R4),10$ ; SET I/O DONE, BRANCHING

                          07         00DA       

                                     00DB   339 						; IF NO ONE WAITING

         04 AC         1C A4     D0  00DB   340 	MOVL	BDB$L_WAIT(R4),4(AP)		; CHANGE ASTPRM TO IRAB

                          08     11  00E0   341 	BRB	CHECKAST			; GO JOIN COMMON CODE TO RESTART

                                     00E2   342 						; STALLED STREAM

                                 04  00E2   343 10$:	RET					; DISMISS AST

                                     00E3   344 

                                     00E3   345 ;++

                                     00E3   346 ;

                                     00E3   347 ; ENTRY HERE VIA NORMAL I/O COMPLETION AST

                                     00E3   348 ;

                                     00E3   349 ;--

                                     00E3   350 	.ALIGN	QUAD

                                     00E8   351 	$ENTRY	RM$STALLAST,^/^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>/

                                 000000E8       	.PSECT	$RMS0,GBL,NOWRT,QUAD

                                     00E8       RM$STALLAST::

                               0FFC  00E8       		.WORD	^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>

                                     00EA   352 

                                     00EA   353 

                                     00EA   354 CHECKAST:

                          0063   30  00EA   355 	BSBW	RM$CHKAST			; CHECK FOR ASTS INHIBITED

                                     00ED   356 						; (NOTE THIS MUST BE A BSBW AND

                                     00ED   357 						; MUST IMMEDIATELY FOLLOW THE ENTRY MASK.)

                                     00ED   358 RM$THREADGO::					; SETS R9 = IFAB OR IRAB ADDR

                                     00ED   359 	$TSTPT	STALAST

                 00000200'9F     D6  00ED       		INCL	@#PIO$GL_FMLH+512+TPT$L_STALAST

                                     00F3   360 	ASSUME	IFB$L_ASBADDR EQ IRB$L_ASBADDR

            51         14 A9     D0  00F3   361 	MOVL	IFB$L_ASBADDR (R9),R1		; GET ASB ADDR

                           00000008  00F7   362 	.IF NE $$RMSTEST&$$RMS_TBUGCHK

                          4E     13  00F7   363 	BEQL	ERRASB				; ERROR IF NONE

                                     00F9   364 	ASSUME	IFB$V_BUSY EQ IRB$V_BUSY

            69            20     E1  00F9   365 	BBC	#IRB$V_BUSY,(R9),ERRASB		; BRANCH IF STREAM NOT BUSY

                          4A         00FC       

                                     00FD   366 	.ENDC

            50         02 A1     9A  00FD   367 	MOVZBL	ASB$B_STKSIZ(R1),R0		; GET SIZE OF STACK

            51            10     C0  0101   368 	ADDL2	#ASB$L_REGS,R1			; MOVE TO REGISTER SAVE AREA

                                     0104   369 

            56            81     D0  0104   370 	MOVL	(R1)+,R6			; RESTORE R6

            57            81     7D  0107   371 	MOVQ	(R1)+,R7			; RESTORE R7/R8

                                     010A   372 						; NOTE R9 ALREADY RESTORED

            5A            81     7D  010A   373 	MOVQ	(R1)+,R10			; RESTORE R10/R11

                                     010D   374 

         14 AB            5E     D0  010D   375 	MOVL	SP,IMP$L_SAVED_SP(R11)		; SAVE STACK ENTRY VALUE

            5E            50     C2  0111   376 	SUBL2	R0,SP				; ALLOCATE REQUIRED SIZE

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  11

013             RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLET                                                                  (2)



            61            50     28  0114   377 	MOVC3	R0,(R1),(SP)			; COPY STACK INCLUDING RETURN PC

                          6E         0117       

                                     0118   378 

            54            8E     7D  0118   379 	MOVQ	(SP)+,R4			; RESTORE R4,R5

                                     011B   380 

                                     011B   381 	ASSUME	IMP$W_RMSSTATUS EQ 0

            6B            02     88  011B   382 	BISB2	#<1@IMP$V_AST>,(R11)		; SET FLAG FOR AT AST LEVEL

                                     011E   383 ;++

                                     011E   384 ;

                                     011E   385 ; REPROBE USER STRUCTURE (USER COULD HAVE DELETED IT FROM AST OR ASYNC OPERATION)

                                     011E   386 ;

                                     011E   387 ;--

                                     011E   388 	ASSUME	IFB$B_MODE EQ IRB$B_MODE

                                     011E   389 

                                     011E   390 	ASSUME	<IFB$C_BID&1> EQ 1

                                     011E   391 	ASSUME	<IRB$C_BID&1> EQ 0

                                     011E   392 	ASSUME	IFB$B_BID EQ IRB$B_BID

                                     011E   393 

            13         08 A9     E8  011E   394 	BLBS	IFB$B_BID(R9),10$		; BRANCH IF IFAB

                                     0122   395 	ASSUME	IFB$B_MODE EQ IRB$B_MODE

                                     0122   396 	IFNOWRT	#RAB$C_BLN,(R8),ERRSTRUCT,IRB$B_MODE(R9) ; BRANCH IF NOT WRITABLE

       0044 8F         0A A9     0D  0122       		PROBEW	IRB$B_MODE(R9),#RAB$C_BLN,(R8)

                          68         0128       

                          18     13  0129       		BEQL	ERRSTRUCT

                                     012B   397 	ASSUME	RAB$B_BID EQ 0

            01            68     91  012B   398 	CMPB	(R8),#RAB$C_BID			; IT MUST BE A RAB

                          0E     12  012E   399 	BNEQ	15$				; BRANCH IF NOT

                                     0130   400 						; (IT COULD BE A FORCED

                                     0130   401 						; DISCONNECT, HENCE A FAB)

                                     0130   402 

                                     0130   403 5$:	ASSUME	IRB$L_IOS EQ IFB$L_IOS

            50         0C A9     3C  0130   404 	MOVZWL	IRB$L_IOS(R9),R0		; PICK UP I/O COMPLETION STATUS

                                 05  0134   405 	RSB					; RESTART THREAD

                                     0135   406 ;

                                     0135   407 	ASSUME	FAB$B_BID EQ 0

                                     0135   408 10$:	IFNOWRT	#FAB$C_BLN,(R8),ERRSTRUCT,IFB$B_MODE(R9) ; BRANCH IF NOT WRITEABLE

       0050 8F         0A A9     0D  0135       		PROBEW	IFB$B_MODE(R9),#FAB$C_BLN,(R8)

                          68         013B       

                          05     13  013C       		BEQL	ERRSTRUCT

            03            68     91  013E   409 15$:	CMPB	(R8),#FAB$C_BID			; IT MUST BE A FAB

                          ED     13  0141   410 	BEQL	5$				; BRANCH IF OK.

                                     0143   411 ;++

                                     0143   412 ;

                                     0143   413 ;  HANDLE ERRORS

                                     0143   414 ;

                                     0143   415 ;--

                                     0143   416 ;

                                     0143   417 ; THE USER HAS BEEN PLAYING FUNNY GAMES WITH MEMORY

                                     0143   418 ;

                                     0143   419 ERRSTRUCT:

                                     0143   420 	RMSTBUG	FTL$_NOSTRUCT

                          FEBA'  30  0143       		BSBW	RM$BUG

                                 F6  0146       		.BYTE	FTL$_NOSTRUCT

                                     0147   421 ;

                                     0147   422 ; NO ASB FOUND IN IFAB/IRAB OR STREAM NOT BUSY

                                     0147   423 ;

                                     0147   424 ERRASB:	RMSTBUG	FTL$_NOASB

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  12

013             RM$STALLAST  -  AST ENTRY POINT FOR I/O COMPLET                                                                  (2)



                          FEB6'  30  0147       		BSBW	RM$BUG

                                 F5  014A       		.BYTE	FTL$_NOASB

                                     014B   425 

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  13

013             RM$CHKAST  -  CHECK FOR ASTS INHIBITED                                                                           (3)



                                     014B   427 	.SBTTL RM$CHKAST  -  CHECK FOR ASTS INHIBITED

                                     014B   428 ;++

                                     014B   429 ; FUNCTIONAL DESCRIPTION:

                                     014B   430 ;

                                     014B   431 ; THIS ROUTINE CHECKS FOR ASTS INHIBITED, AND IF SO DISABLES

                                     014B   432 ; ASTS, REDECLARES THE CURRENT AST, CLEARS THE FLAG

                                     014B   433 ; PIO$V_INHAST TO CAUSE ASTS TO BE REENABLED WHEN THE

                                     014B   434 ; ACTIVE NON-AST CODE EXITS, AND EXITS.

                                     014B   435 ;

                                     014B   436 ; IF ASTS ARE NOT DISABLED, SETS R9 TO THE VALUE OF THE

                                     014B   437 ; AST PARAMETER AND CHECKS THAT IT IS A VALID IFAB OF

                                     014B   438 ; IRAB ADDRESS, AND RETURNS TO THE CALLER.

                                     014B   439 ;

                                     014B   440 ; CALLING SEQUENCE

                                     014B   441 ;

                                     014B   442 ;	BSBW	RM$CHKAST

                                     014B   443 ;

                                     014B   444 ;

                                     014B   445 ; INPUT PARAMETERS:

                                     014B   446 ;

                                     014B   447 ;	AP	AST ARGUMENT LIST ADDRESS

                                     014B   448 ;

                                     014B   449 ; IMPLICIT INPUTS:

                                     014B   450 ;

                                     014B   451 ;	IT IS ASSUMED THAT RM$CHKAST WAS CALLED VIA BSBW AS

                                     014B   452 ;	THE FIRST INSTRUCTION OF THE AST ROUTINE.

                                     014B   453 ;

                                     014B   454 ; OUTPUT PARAMETERS:

                                     014B   455 ;

                                     014B   456 ;	IF RETURN TO CALLER, R9=IFAB OR IRAB ADDRESS.

                                     014B   457 ;

                                     014B   458 ; INPLICIT OUTPUTS:

                                     014B   459 ;

                                     014B   460 ;	MAY REQUEUE THE AST IF CURRENTLY INHIBITED.

                                     014B   461 ;

                                     014B   462 ; CONDITION CODES:

                                     014B   463 ;

                                     014B   464 ;	NONE.

                                     014B   465 ;

                                     014B   466 ; SIDE EFFECTS:

                                     014B   467 ;

                                     014B   468 ;	ASTS MAY BE DISABLED.

                                     014B   469 ;

                                     014B   470 ;--

                                     014B   471 	.ALIGN	QUAD

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  14

013             RM$CHKAST  -  CHECK FOR ASTS INHIBITED                                                                           (3)



                                     0150   473 RM$CHKAST::

            59         04 AC     D0  0150   474 	MOVL	4(AP),R9			; GET IFAB/IRAB ADDRESS

   00000000'9F            00     E4  0154   475 	BBSC	#PIO$V_INHAST,@#PIO$GW_STATUS,DSBLAST	; BRANCH IF INHIBITED

                          11         015B       

                                     015C   476 ;

                                     015C   477 ; O.K. TO RECEIVE AST

                                     015C   478 ; CHECK R9 IFAB OR IRAB ADDRESS FOR VALIDITY

                                     015C   479 ;

                           00000008  015C   480 	.IF NE $$RMSTEST&$$RMS_TBUGCHK

                                     015C   481 	ASSUME	IFB$B_BID EQ IRB$B_BID

            0A         08 A9     91  015C   482 	CMPB	IRB$B_BID(R9),#IRB$C_BID	; IS IT AN IRAB?

                          01     12  0160   483 	BNEQ	20$				; BRANCH IF NOT

                                 05  0162   484 10$:	RSB					; YES - RETURN

            0B         08 A9     91  0163   485 20$:	CMPB	IFB$B_BID(R9),#IFB$C_BID	; THEN IT MUST BE AN IFAB?

                          F9     13  0167   486 	BEQL	10$				; I KNEW I WAS RIGHT!

                                     0169   487 	RMSTBUG	FTL$_BADASTPRM			; OOPS!

                          FE94'  30  0169       		BSBW	RM$BUG

                                 F8  016C       		.BYTE	FTL$_BADASTPRM

                                     016D   488 	.IFF

                                     016D   489 	RSB

                                     016D   490 	.ENDC

                                     016D   491 ;++

                                     016D   492 ;

                                     016D   493 ; ASTS ARE INHIBITED

                                     016D   494 ; DISABLE ASTS AND REDECLARE THE CURRENT AST

                                     016D   495 ;

                                     016D   496 DSBLAST:

                                     016D   497 	$TSTPT	ASTDSA

                 00000200'9F     D6  016D       		INCL	@#PIO$GL_FMLH+512+TPT$L_ASTDSA

                                     0173   498 	$SETAST_S	#0			; DISABLE ASTS

                          00     DD  0173       		PUSHL	#0

   00000000'GF            01     FB  0175       		CALLS	#1,G^SYS$SETAST

            8E            05     C3  017C   499 	SUBL3	#5,(SP)+,R1			; COMPUTE AST ADDRESS

                          51         017F       

                                     0180   500 						; (RETURN PC - 3-BYTE BSW

                                     0180   501 						; - 2-BYTE ENTRY MASK)

                                     0180   502 	$DCLAST_S ASTADR=(R1),ASTPRM=R9		; RE-DECLARE THE AST

                          00     DD  0180       		PUSHL	#0

                          59     DD  0182       		PUSHL	R9

                          61     DF  0184       		PUSHAL	(R1)

   00000000'GF            03     FB  0186       		CALLS	#3,G^SYS$DCLAST

            01            50     E9  018D   503 	BLBC	R0,ERRAST	

                                 04  0190   504 	RET					; AND EXIT

                                     0191   505 ;

                                     0191   506 ; NO SPACE TO DECLARE AN AST

                                     0191   507 ;

                                     0191   508 ERRAST:	RMSTBUG	FTL$_CANTDOAST

                          FE6C'  30  0191       		BSBW	RM$BUG

                                 F7  0194       		.BYTE	FTL$_CANTDOAST

                                     0195   509 	.END

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  15

SYMBOL TABLE                                                                                                                     (3)



$$.PSECT_EP    = 00000000            BDB$W_NUMB       00000010            FAB$M_CTG      = 00100000            

$$RMSTEST      = 0000001A            BDB$W_SIZE       00000012            FAB$M_DEL      = 00000004            

$$RMS_PBUGCHK  = 00000010            BIT...         = 00000000            FAB$M_DFW      = 00000020            

$$RMS_TBUGCHK  = 00000008            BKP            = 00000020            FAB$M_DLT      = 00008000            

$$RMS_UMODE    = 00000004            CHECKAST         000000EA R     02   FAB$M_DMO      = 00001000            

ASB$B_ARGCNT     00000000            CTXSAV           0000006D R     02   FAB$M_ESC      = 08000000            

ASB$B_BLN        00000001            DSBLAST          0000016D R     02   FAB$M_EXE      = 00000080            

ASB$B_STKSIZ     00000002            ENBAST           000000BE R     02   FAB$M_FTN      = 00000001            

ASB$C_BLN_FAB    00000070            ERRASB           00000147 R     02   FAB$M_GET      = 00000002            

ASB$C_BLN_IDX    000000AC            ERRAST           00000191 R     02   FAB$M_INP      = 00080000            

ASB$C_BLN_REL    00000084            ERRBUG           000000C9 R     02   FAB$M_JNL      = 00400000            

ASB$C_BLN_SEQ    00000080            ERRDME           00000027 R     02   FAB$M_KFO      = 40000000            

ASB$K_BLN_FAB    00000070            ERRSTRUCT        00000143 R     02   FAB$M_MSE      = 00000010            

ASB$K_BLN_IDX    000000AC            FAB$B_BID        00000000            FAB$M_MXV      = 00000002            

ASB$K_BLN_REL    00000084            FAB$B_BKS        0000003E            FAB$M_NAM      = 01000000            

ASB$K_BLN_SEQ    00000080            FAB$B_BLN        00000001            FAB$M_NEF      = 00000400            

ASB$L_ERR        00000008            FAB$B_DNS        00000035            FAB$M_NFS      = 00010000            

ASB$L_FABRAB     00000004            FAB$B_FAC        00000016            FAB$M_NIL      = 00000020            

ASB$L_REGS       00000010            FAB$B_FNS        00000034            FAB$M_OFP      = 20000000            

ASB$L_SUC        0000000C            FAB$B_FSZ        0000003F            FAB$M_POS      = 00000100            

ASYNCOP          0000002B R     02   FAB$B_ORG        0000001D            FAB$M_PPF      = 00040000            

BDB$B_BID        00000008            FAB$B_RAT        0000001E            FAB$M_PPF_IND  = 00004000            

BDB$B_BLN        00000009            FAB$B_RFM        0000001F            FAB$M_PPF_RAT  = 00003FC0            

BDB$B_FLGS       0000000A            FAB$B_RTV        0000001C            FAB$M_PRN      = 00000004            

BDB$B_POST_CCTL  00000023            FAB$B_SHR        00000017            FAB$M_PUT      = 00000001            

BDB$B_PRE_CCTL   00000022            FAB$C_BID      = 00000003            FAB$M_RCK      = 00800000            

BDB$B_REL_VBN    00000020            FAB$C_BLN        00000050            FAB$M_RWC      = 00000800            

BDB$B_USECNT     0000000B            FAB$C_FIX      = 00000001            FAB$M_RWO      = 00000080            

BDB$B_VAL_VBNS   00000021            FAB$C_HSH      = 00000030            FAB$M_SCF      = 00004000            

BDB$C_BID      = 0000000C            FAB$C_IDX      = 00000020            FAB$M_SHRDEL   = 00000004            

BDB$C_BLN        00000028            FAB$C_MAXRFM   = 00000003            FAB$M_SHRGET   = 00000002            

BDB$K_BLN        00000028            FAB$C_REL      = 00000010            FAB$M_SHRPUT   = 00000001            

BDB$L_ADDR       00000014            FAB$C_RFM_DFLT = 00000002            FAB$M_SHRUPD   = 00000008            

BDB$L_BLINK      00000004            FAB$C_SEQ      = 00000000            FAB$M_SPL      = 00002000            

BDB$L_CURBUFADR  00000024            FAB$C_UDF      = 00000000            FAB$M_SQO      = 00000040            

BDB$L_FLINK      00000000            FAB$C_VAR      = 00000002            FAB$M_SUP      = 00000004            

BDB$L_IOSB       00000020            FAB$C_VFC      = 00000003            FAB$M_TEF      = 10000000            

BDB$L_OWN        0000000C            FAB$K_BLN        00000050            FAB$M_TMD      = 00000010            

BDB$L_VBN        00000018            FAB$L_ALQ        00000010            FAB$M_TMP      = 00000008            

BDB$L_WAIT       0000001C            FAB$L_CTX        00000018            FAB$M_TRN      = 00000010            

BDB$L_WK1        00000020            FAB$L_DEV        00000040            FAB$M_UFM      = 04000000            

BDB$M_AST_DCL  = 00000040            FAB$L_DNA        00000030            FAB$M_UFO      = 00020000            

BDB$M_DRT      = 00000002            FAB$L_FNA        0000002C            FAB$M_UPD      = 00000008            

BDB$M_IOP      = 00000004            FAB$L_FOP        00000004            FAB$M_UPI      = 00000040            

BDB$M_LKDINWS  = 00000080            FAB$L_JNL        00000020            FAB$M_WCK      = 00000200            

BDB$M_NOLOCATE = 00000010            FAB$L_MRN        00000038            FAB$S_ORG      = 00000004            

BDB$M_PRM      = 00000008            FAB$L_NAM        00000028            FAB$S_PPF_RAT  = 00000008            

BDB$M_VAL      = 00000001            FAB$L_SDC        00000044            FAB$V_BIO      = 00000005            

BDB$M_WFO      = 00000020            FAB$L_STS        00000008            FAB$V_BLK      = 00000003            

BDB$V_AST_DCL  = 00000006            FAB$L_STV        0000000C            FAB$V_BRO      = 00000006            

BDB$V_DRT      = 00000001            FAB$L_XAB        00000024            FAB$V_CBT      = 00000015            

BDB$V_IOP      = 00000002            FAB$M_BIO      = 00000020            FAB$V_CIF      = 00000019            

BDB$V_LKDINWS  = 00000007            FAB$M_BLK      = 00000008            FAB$V_CR       = 00000001            

BDB$V_NOLOCATE = 00000004            FAB$M_BRO      = 00000040            FAB$V_CTG      = 00000014            

BDB$V_PRM      = 00000003            FAB$M_CBT      = 00200000            FAB$V_DEL      = 00000002            

BDB$V_VAL      = 00000000            FAB$M_CIF      = 02000000            FAB$V_DFW      = 00000005            

BDB$V_WFO      = 00000005            FAB$M_CR       = 00000002            FAB$V_DLT      = 0000000F            

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  16

SYMBOL TABLE                                                                                                                     (3)



FAB$V_DMO      = 0000000C            FTL$_LOCKFAILED= FFFFFFE7            IFB$L_IDX_PTR    00000054            

FAB$V_ESC      = 0000001B            FTL$_NOASB     = FFFFFFF5            IFB$L_IOS        0000000C            

FAB$V_EXE      = 00000007            FTL$_NODIDORFID= FFFFFFEB            IFB$L_IOS4       00000010            

FAB$V_FTN      = 00000000            FTL$_NOLOCKBDB = FFFFFFE9            IFB$L_IRAB_LNK   0000001C            

FAB$V_GET      = 00000001            FTL$_NONETWORK = FFFFFFE8            IFB$L_LAST_FAB   00000024            

FAB$V_INP      = 00000013            FTL$_NONXTBDB  = FFFFFFF4            IFB$L_LOCK_BDB   00000050            

FAB$V_JNL      = 00000016            FTL$_NOSTRUCT  = FFFFFFF6            IFB$L_MRN        00000054            

FAB$V_KFO      = 0000001E            FTL$_NOTLOCKED = FFFFFFEC            IFB$L_NRP_LNK    00000050            

FAB$V_MSE      = 00000004            FTL$_RELEASFAIL= FFFFFFEA            IFB$L_NWA_PTR    00000028            

FAB$V_MXV      = 00000001            FTL$_SETPRTFAIL= FFFFFFFF            IFB$L_PRIM_DEV   00000000            

FAB$V_NAM      = 00000018            FTL$_STKTOOBIG = FFFFFFFE            IFB$L_RLB_LNK    0000002C            

FAB$V_NEF      = 0000000A            FTL$_XFERSIZE  = FFFFFFED            IFB$L_RNS_LEN    00000050            

FAB$V_NFS      = 00000010            GBL...         = 00000000            IFB$M_BIO      = 00000020            

FAB$V_NIL      = 00000005            IFB$B_AMAX       00000059            IFB$M_BRO      = 00000040            

FAB$V_OFP      = 0000001D            IFB$B_AVBN       00000058            IFB$M_DEL      = 00000004            

FAB$V_ORG      = 00000004            IFB$B_BID        00000008            IFB$M_EXE      = 00000080            

FAB$V_POS      = 00000008            IFB$B_BKS        0000004A            IFB$M_GET      = 00000002            

FAB$V_PPF      = 00000012            IFB$B_BLN        00000009            IFB$M_PUT      = 00000001            

FAB$V_PPF_IND  = 0000000E            IFB$B_EFN        0000000B            IFB$M_TRN      = 00000010            

FAB$V_PPF_RAT  = 00000006            IFB$B_EXTRABUF   0000005D            IFB$M_UPD      = 00000008            

FAB$V_PRN      = 00000002            IFB$B_FAC        00000022            IFB$S_ORG      = 00000004            

FAB$V_PUT      = 00000000            IFB$B_FSZ        0000004B            IFB$S_RFM      = 00000004            

FAB$V_RCK      = 00000017            IFB$B_KBUFSZ     0000005C            IFB$V_ACCESSED = 00000025            

FAB$V_RWC      = 0000000B            IFB$B_MODE       0000000A            IFB$V_ANSI_D   = 00000026            

FAB$V_RWO      = 00000007            IFB$B_NUM_KEYS   0000005A            IFB$V_ASYNC    = 00000023            

FAB$V_SCF      = 0000000E            IFB$B_ORGCASE    00000023            IFB$V_ASYNCWAIT= 00000024            

FAB$V_SHRDEL   = 00000002            IFB$B_RAT        0000003D            IFB$V_BIO      = 00000005            

FAB$V_SHRGET   = 00000001            IFB$B_RFMORG     0000003C            IFB$V_BRO      = 00000006            

FAB$V_SHRPUT   = 00000000            IFB$B_UBUFSZ     0000005B            IFB$V_BUSY     = 00000020            

FAB$V_SHRUPD   = 00000003            IFB$C_BID      = 0000000B            IFB$V_CREATE   = 00000032            

FAB$V_SPL      = 0000000D            IFB$C_BLN        00000060            IFB$V_DAP      = 0000003E            

FAB$V_SQO      = 00000006            IFB$C_BLN_IDX    00000060            IFB$V_DAP_OPEN = 0000003D            

FAB$V_SUP      = 00000002            IFB$C_BLN_REL    00000060            IFB$V_DEL      = 00000002            

FAB$V_TEF      = 0000001C            IFB$C_BLN_SEQ    0000005C            IFB$V_DFW      = 0000002C            

FAB$V_TMD      = 00000004            IFB$C_DIR      = 00000003            IFB$V_DLT      = 0000002B            

FAB$V_TMP      = 00000003            IFB$C_FHAEND     00000050            IFB$V_DMO      = 00000028            

FAB$V_TRN      = 00000004            IFB$C_IDX      = 00000002            IFB$V_EOF      = 00000021            

FAB$V_UFM      = 0000001A            IFB$C_MAXORG   = 00000002            IFB$V_EXE      = 00000007            

FAB$V_UFO      = 00000011            IFB$C_REL      = 00000001            IFB$V_GET      = 00000001            

FAB$V_UPD      = 00000003            IFB$C_SEQ      = 00000000            IFB$V_MSE      = 00000031            

FAB$V_UPI      = 00000006            IFB$K_BLN        00000060            IFB$V_NORECLK  = 00000033            

FAB$V_WCK      = 00000009            IFB$K_BLN_IDX    00000060            IFB$V_NSP      = 0000003F            

FAB$W_BLS        0000003C            IFB$K_BLN_REL    00000060            IFB$V_NWA      = 0000003C            

FAB$W_DEQ        00000014            IFB$K_BLN_SEQ    0000005C            IFB$V_ORG      = 00000004            

FAB$W_IFI        00000002            IFB$K_FHAEND     00000050            IFB$V_PPF_IMAGE= 00000022            

FAB$W_MRS        00000036            IFB$L_ARGLST     00000018            IFB$V_PPF_INPUT= 0000002E            

FTL$_ASBALLFAIL= FFFFFFF9            IFB$L_ASBADDR    00000014            IFB$V_PUT      = 00000000            

FTL$_BADASTPRM = FFFFFFF8            IFB$L_AS_DEV     00000054            IFB$V_RFM      = 00000000            

FTL$_BADBDB    = FFFFFFFA            IFB$L_BDB_BLNK   00000034            IFB$V_RWC      = 00000027            

FTL$_BADBUFSIZ = FFFFFFF3            IFB$L_BDB_FLNK   00000030            IFB$V_RW_ATTR  = 00000034            

FTL$_BADIFAB   = FFFFFFFD            IFB$L_BKPBITS    00000004            IFB$V_SCF      = 0000002A            

FTL$_BADLEVEL  = FFFFFFE6            IFB$L_BWB        0000000C            IFB$V_SPL      = 00000029            

FTL$_BADORGCASE= FFFFFFFB            IFB$L_DVBN       00000058            IFB$V_SQO      = 0000002D            

FTL$_CANTDOAST = FFFFFFF7            IFB$L_EBK        00000044            IFB$V_TEF      = 00000036            

FTL$_DEALLERR  = FFFFFFEF            IFB$L_FRB_PTR    00000028            IFB$V_TMP      = 00000035            

FTL$_GTCHNFAIL = FFFFFFFC            IFB$L_FWA_BDB    00000050            IFB$V_TRN      = 00000004            

FTL$_IORNDN    = FFFFFFEE            IFB$L_HBK        00000040            IFB$V_UPD      = 00000003            

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  17

SYMBOL TABLE                                                                                                                     (3)



IFB$V_WRTACC   = 00000030            IRB$B_STOPLEVEL  00000042            IRB$V_UNLOCK_RP= 0000002D            

IFB$W_ASDEVBSIZ  0000005A            IRB$C_BID      = 0000000A            IRB$V_WRITE    = 00000029            

IFB$W_BKS_BYTES  0000005C            IRB$C_BLN_IDX    0000006C            IRB$W_CSIZ       00000042            

IFB$W_BKS_RECS   0000005E            IRB$C_BLN_REL    00000048            IRB$W_DUP_POS    00000032            

IFB$W_CHNL       00000020            IRB$C_BLN_SEQ    0000004C            IRB$W_IOS2       0000000E            

IFB$W_DEQ        0000004E            IRB$K_BLN_IDX    0000006C            IRB$W_NRP_OFF    00000030            

IFB$W_DEVBUFSIZ  00000038            IRB$K_BLN_REL    00000048            IRB$W_OWN_ID     0000003C            

IFB$W_EBK0       00000044            IRB$K_BLN_SEQ    0000004C            IRB$W_OWN_ISI    0000003E            

IFB$W_EBK2       00000046            IRB$L_ARGLST     00000018            IRB$W_ROVHDSZ    00000044            

IFB$W_FFB        00000048            IRB$L_ASBADDR    00000014            IRB$W_RP_OFF     00000038            

IFB$W_IOS2       0000000E            IRB$L_BKPBITS    00000004            IRB$W_RTOTLSZ    00000046            

IFB$W_LRL        0000003E            IRB$L_BWB        0000000C            IRB$W_SAVE_POS   00000052            

IFB$W_MRS        0000004C            IRB$L_CURBDB     00000020            PIO$GL_FMLH      ********   X   02   

IFB$W_RTDEQ      0000003A            IRB$L_CURVBN     00000030            PIO$GW_PIOIMPA   ********   X   02   

IMP$B_PROT       00000002            IRB$L_IFAB_LNK   00000000            PIO$GW_STATUS    ********   X   02   

IMP$C_ASYEFN   = 0000001E            IRB$L_IOS        0000000C            PIO$V_EOD      = 00000001            

IMP$C_ASYQIOEFN= 0000001F            IRB$L_IOS4       00000010            PIO$V_INHAST   = 00000000            

IMP$C_ENTPERSEG= 0000000F            IRB$L_IRAB_LNK   0000001C            PIO$V_SYNC1    = 00000002            

IMP$C_IOREFN   = 0000001E            IRB$L_KEYBUF     00000048            PIO$V_SYNC2    = 00000003            

IMP$C_MBXEFN   = 0000001A            IRB$L_LAST_RAB   00000024            RAB$B_BID        00000000            

IMP$C_NPIOFILES= 0000000C            IRB$L_LOCK_BDB   0000005C            RAB$B_BLN        00000001            

IMP$C_SYNCEFN  = 0000001B            IRB$L_NRP        0000002C            RAB$B_KRF        00000035            

IMP$L_FREEPGLH   0000000C            IRB$L_NRP_OFF    00000030            RAB$B_KSZ        00000034            

IMP$L_IFABTBL    00000018            IRB$L_NRP_VBN    0000002C            RAB$B_MBC        00000037            

IMP$L_IFBTBLINK  00000024            IRB$L_NXTBDB     00000028            RAB$B_MBF        00000036            

IMP$L_IOSEGADDR  00000004            IRB$L_OWNER_ID   0000003C            RAB$B_PSZ        00000034            

IMP$L_IOSEGLEN   00000008            IRB$L_RFA_VBN    00000054            RAB$B_RAC        0000001E            

IMP$L_IRABTBL    0000001C            IRB$L_RLB_ADDR   00000044            RAB$B_ROP1       00000005            

IMP$L_IRBTBLINK  00000064            IRB$L_RP         00000034            RAB$B_ROP2       00000006            

IMP$L_SAVED_SP   00000014            IRB$L_RP_OFF     00000038            RAB$B_ROP3       00000007            

IMP$V_AST      = 00000001            IRB$L_RP_VBN     00000034            RAB$B_TMO        0000001F            

IMP$V_IIOS     = 00000000            IRB$L_RRV_VBN    0000004C            RAB$C_BID      = 00000001            

IMP$V_IORUNDOWN= 00000004            IRB$L_TEMP0      00000044            RAB$C_BLN        00000044            

IMP$V_NOP0BUFS = 00000005            IRB$L_TEMP1      00000048            RAB$C_KEY      = 00000001            

IMP$V_TEMP1    = 00000002            IRB$V_ASYNC    = 00000023            RAB$C_RFA      = 00000002            

IMP$V_TEMP2    = 00000003            IRB$V_ASYNCWAIT= 00000024            RAB$C_SEQ      = 00000000            

IMP$W_ENTPERSEG  00000020            IRB$V_BIO_LAST = 00000027            RAB$K_BLN        00000044            

IMP$W_NUM_IFABS  00000022            IRB$V_BRO_SW   = 00000028            RAB$L_BKT        00000038            

IMP$W_RMSSTATUS  00000000            IRB$V_BUSY     = 00000020            RAB$L_CTX        00000018            

IRB$B_BCNT       00000040            IRB$V_DAP_CONN = 0000003E            RAB$L_DCT        00000038            

IRB$B_BID        00000008            IRB$V_DAP_FMODE= 0000003F            RAB$L_FAB        0000003C            

IRB$B_BLN        00000009            IRB$V_DUP      = 0000002C            RAB$L_KBF        00000030            

IRB$B_EFN        0000000B            IRB$V_EOF      = 00000021            RAB$L_PBF        00000030            

IRB$B_KEYSZ      00000051            IRB$V_FIND     = 00000029            RAB$L_RBF        00000028            

IRB$B_MBC        00000041            IRB$V_FIND_LAST= 00000025            RAB$L_RFA0       00000010            

IRB$B_MODE       0000000A            IRB$V_IDX_ERR  = 00000031            RAB$L_RHB        0000002C            

IRB$B_NRP_ID     00000030            IRB$V_LOCKABOVE= 00000002            RAB$L_ROP        00000004            

IRB$B_NRP_KREF   00000031            IRB$V_NEW_IDX  = 00000003            RAB$L_STS        00000008            

IRB$B_NVBNS      00000048            IRB$V_POSINSERT= 00000000            RAB$L_STV        0000000C            

IRB$B_POST_CCTL  00000045            IRB$V_PPF_EOF  = 0000002E            RAB$L_UBF        00000024            

IRB$B_PPF_ISI    0000003E            IRB$V_PPF_FNDSV= 00000030            RAB$M_ASY      = 00000001            

IRB$B_PRE_CCTL   00000044            IRB$V_PPF_IMAGE= 00000022            RAB$M_BIO      = 00000800            

IRB$B_RFA_ID     00000058            IRB$V_PPF_SKIP = 0000002F            RAB$M_CCO      = 80000000            

IRB$B_RP_ID      00000038            IRB$V_PUTS_LAST= 00000026            RAB$M_CVT      = 04000000            

IRB$B_RP_KREF    00000039            IRB$V_RAHWBH   = 0000002A            RAB$M_EOF      = 00000100            

IRB$B_RRV_ID     00000050            IRB$V_SKIP_NEXT= 0000002B            RAB$M_FDL      = 00000040            

IRB$B_SRCHFLAGS  00000043            IRB$V_SRCHGT   = 00000001            RAB$M_HSH      = 00000080            

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  18

SYMBOL TABLE                                                                                                                     (3)



RAB$M_KGE      = 00200000            RETURN           000000BD R     02   RMS$_DNR       = 00018272            

RAB$M_KGT      = 00400000            RM$BUG           ********   X   02   RMS$_DPE       = 0001C03A            

RAB$M_LIM      = 00004000            RM$CHKAST        00000150 RG    02   RMS$_DTP       = 000184E4            

RAB$M_LOA      = 00002000            RM$ENBAST        000000B2 RG    02   RMS$_DUP       = 000184EC            

RAB$M_LOC      = 00010000            RM$GETBLK        ********   X   02   RMS$_DVI       = 000184F4            

RAB$M_MAS      = 00000020            RM$RAHWBHAST     000000D0 RG    02   RMS$_ENT       = 0001C01A            

RAB$M_NLK      = 00100000            RM$STALL         00000051 RG    02   RMS$_ENV       = 00018724            

RAB$M_NXR      = 00800000            RM$STALLAST      000000E8 RG    02   RMS$_EOF       = 0001827A            

RAB$M_PMT      = 40000000            RM$THREADGO      000000ED RG    02   RMS$_ESA       = 000184FC            

RAB$M_PPF_IND  = 00004000            RMS$V_STVSTATUS= 0000000E            RMS$_ESL       = 00018714            

RAB$M_PPF_RAT  = 00003FC0            RMS$_ABO       = 000183EC            RMS$_ESS       = 00018504            

RAB$M_PTA      = 20000000            RMS$_ACC       = 0001C002            RMS$_EXP       = 000182C2            

RAB$M_RAH      = 00000200            RMS$_ACT       = 0001825A            RMS$_EXT       = 0001C022            

RAB$M_RLK      = 00080000            RMS$_AID       = 000183F4            RMS$_FAB       = 0001850C            

RAB$M_RNE      = 01000000            RMS$_ALN       = 000183FC            RMS$_FAC       = 00018514            

RAB$M_RNF      = 08000000            RMS$_ALQ       = 00018404            RMS$_FEX       = 00018282            

RAB$M_TMO      = 02000000            RMS$_ANI       = 0001840C            RMS$_FLG       = 0001851C            

RAB$M_TPT      = 00000002            RMS$_AOP       = 00018414            RMS$_FLK       = 0001828A            

RAB$M_UIF      = 00000010            RMS$_ATR       = 0001C0CC            RMS$_FNA       = 00018524            

RAB$M_ULK      = 00040000            RMS$_ATW       = 0001C0D4            RMS$_FND       = 0001C02A            

RAB$M_WAT      = 00020000            RMS$_BKS       = 0001841C            RMS$_FNF       = 00018292            

RAB$M_WBH      = 00000400            RMS$_BKZ       = 00018424            RMS$_FNM       = 0001852C            

RAB$S_PPF_RAT  = 00000008            RMS$_BLN       = 0001842C            RMS$_FOP       = 0001853C            

RAB$V_ASY      = 00000000            RMS$_BOF       = 00018198            RMS$_FSZ       = 00018534            

RAB$V_BIO      = 0000000B            RMS$_BUG       = 00018434            RMS$_FUL       = 00018544            

RAB$V_CCO      = 0000001F            RMS$_BUG_DAP   = 00018444            RMS$_IAL       = 0001854C            

RAB$V_CVT      = 0000001A            RMS$_BUG_DDI   = 0001843C            RMS$_IAN       = 00018554            

RAB$V_EOF      = 00000008            RMS$_BUG_XX2   = 0001844C            RMS$_IBF       = 00018754            

RAB$V_FDL      = 00000006            RMS$_BUG_XX3   = 00018454            RMS$_IDX       = 0001855C            

RAB$V_HSH      = 00000007            RMS$_BUG_XX4   = 0001845C            RMS$_IFA       = 0001C124            

RAB$V_KGE      = 00000015            RMS$_BUG_XX5   = 00018464            RMS$_IFI       = 00018564            

RAB$V_KGT      = 00000016            RMS$_BUG_XX6   = 0001846C            RMS$_IMX       = 0001856C            

RAB$V_LIM      = 0000000E            RMS$_BUG_XX7   = 00018474            RMS$_IOP       = 00018574            

RAB$V_LOA      = 0000000D            RMS$_BUG_XX8   = 0001847C            RMS$_IRC       = 0001857C            

RAB$V_LOC      = 00000010            RMS$_BUG_XX9   = 00018484            RMS$_ISI       = 00018584            

RAB$V_MAS      = 00000005            RMS$_CAA       = 0001848C            RMS$_KBF       = 0001858C            

RAB$V_NLK      = 00000014            RMS$_CCF       = 0001C0DC            RMS$_KEY       = 00018594            

RAB$V_NXR      = 00000017            RMS$_CCR       = 00018494            RMS$_KFF       = 00018031            

RAB$V_PMT      = 0000001E            RMS$_CDA       = 0001C0E4            RMS$_KRF       = 0001859C            

RAB$V_PPF_IND  = 0000000E            RMS$_CHG       = 0001849C            RMS$_KSZ       = 000185A4            

RAB$V_PPF_RAT  = 00000006            RMS$_CHK       = 000184A4            RMS$_LAN       = 000185AC            

RAB$V_PTA      = 0000001D            RMS$_CHN       = 0001C0EC            RMS$_LBL       = 000185B4            

RAB$V_RAH      = 00000009            RMS$_COD       = 000184AC            RMS$_LNE       = 000185BC            

RAB$V_RLK      = 00000013            RMS$_CONTROLC  = 00010651            RMS$_LOC       = 000185C4            

RAB$V_RNE      = 00000018            RMS$_CONTROLO  = 00010609            RMS$_MBC       = 00018734            

RAB$V_RNF      = 0000001B            RMS$_CONTROLY  = 00010611            RMS$_MKD       = 0001C032            

RAB$V_TMO      = 00000019            RMS$_CRE       = 0001C00A            RMS$_MRN       = 000185CC            

RAB$V_TPT      = 00000001            RMS$_CREATED   = 00010619            RMS$_MRS       = 000185D4            

RAB$V_UIF      = 00000004            RMS$_CUR       = 000184B4            RMS$_NAM       = 000185DC            

RAB$V_ULK      = 00000012            RMS$_DAC       = 0001C012            RMS$_NEF       = 000185E4            

RAB$V_WAT      = 00000011            RMS$_DAN       = 000184BC            RMS$_NET       = 0001874C            

RAB$V_WBH      = 0000000A            RMS$_DEL       = 00018262            RMS$_NID       = 000185EC            

RAB$W_ISI        00000002            RMS$_DEV       = 000184C4            RMS$_NMF       = 000182CA            

RAB$W_RFA        00000010            RMS$_DIR       = 000184CC            RMS$_NOD       = 000185F4            

RAB$W_RFA4       00000014            RMS$_DME       = 000184D4            RMS$_NORMAL    = 00010001            

RAB$W_RSZ        00000022            RMS$_DNA       = 000184DC            RMS$_NPK       = 000185FC            

RAB$W_USZ        00000020            RMS$_DNF       = 0001C04A            RMS$_OK_ALK    = 00018039            

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  19

SYMBOL TABLE                                                                                                                     (3)



RMS$_OK_DEL    = 00018041            RMS$_UBF       = 000186EC            

RMS$_OK_DUP    = 00018011            RMS$_USZ       = 000186F4            

RMS$_OK_IDX    = 00018019            RMS$_VER       = 000186FC            

RMS$_OK_LIM    = 00018051            RMS$_VOL       = 00018704            

RMS$_OK_RLK    = 00018021            RMS$_WBE       = 0001C12C            

RMS$_OK_RNF    = 00018049            RMS$_WER       = 0001C114            

RMS$_OK_RRV    = 00018029            RMS$_WLD       = 00018744            

RMS$_ORD       = 00018604            RMS$_WLK       = 000182BA            

RMS$_ORG       = 0001860C            RMS$_WPL       = 0001C11C            

RMS$_PBF       = 00018614            RMS$_WSF       = 0001871C            

RMS$_PENDING   = 00018009            RMS$_XAB       = 0001870C            

RMS$_PLG       = 0001861C            SETSTS           000000BA R     02   

RMS$_PLV       = 0001872C            STALLAL          00000000 R     02   

RMS$_POS       = 00018624            SYNCOP           00000068 R     02   

RMS$_PRM       = 0001862C            SYS$DCLAST       ********   X   02   

RMS$_PRV       = 0001829A            SYS$SETAST       ********   X   02   

RMS$_QUO       = 00018634            TPT$L_ASTDSA     ********   X   02   

RMS$_RAB       = 0001863C            TPT$L_STALAST    ********   X   02   

RMS$_RAC       = 00018644            TPT$L_STALL      ********   X   02   

RMS$_RAT       = 0001864C            TPT$L_STALLAL    ********   X   02   

RMS$_RBF       = 00018654            

RMS$_RER       = 0001C0F4            

RMS$_REX       = 000182A2            

RMS$_RFA       = 0001865C            

RMS$_RFM       = 00018664            

RMS$_RHB       = 0001866C            

RMS$_RLF       = 00018674            

RMS$_RLK       = 000182AA            

RMS$_RMV       = 0001C0FC            

RMS$_RNF       = 000182B2            

RMS$_RNL       = 000181A0            

RMS$_ROP       = 0001867C            

RMS$_RPL       = 0001C104            

RMS$_RRV       = 00018684            

RMS$_RSA       = 000182DA            

RMS$_RSL       = 0001873C            

RMS$_RSS       = 00018694            

RMS$_RST       = 0001869C            

RMS$_RSZ       = 000186A4            

RMS$_RTB       = 000181A8            

RMS$_SEQ       = 000186AC            

RMS$_SHR       = 000186B4            

RMS$_SIZ       = 000186BC            

RMS$_SPL       = 0001C042            

RMS$_SQO       = 000186C4            

RMS$_STALL     = 00018001            

RMS$_STK       = 000186CC            

RMS$_SUC       = 00010001            

RMS$_SUP       = 000182D2            

RMS$_SUPERSEDE = 00010631            

RMS$_SYN       = 000186D4            

RMS$_SYS       = 0001C10C            

RMS$_TEMP1     = 0001826A            

RMS$_TEMP2     = 0001868C            

RMS$_TMO       = 000181B0            

RMS$_TRE       = 000186DC            

RMS$_TYP       = 000186E4            

RM0STALL        STALL FOR I/O COMPLETION                         21-AUG-1978 21:30:37   VAX-11 MACRO X0.3-11               Page  20

PROGRAM SECTION SYNOPSIS                                                                                                         (3)







PROGRAM SECTION SYNOPSIS



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

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

$RMS0            00000195      02     NOPIC   USR   CON   REL   GBL NOSHR   EXE   RD  NOWRT QUAD  

$ABS$            000000AC      03     NOPIC   USR   CON   ABS   LCL NOSHR   EXE   RD    WRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

6276. BYTES LEFT IN FREE MEMORY POOL.

2608. BYTES OF RECLAIMED MEMORY.

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

37 MLB DIR RDS - 1256 GETS TO DEFINE 30 MACROS. 97 INTER. FILE WRITES. 

