RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (1)    3100  HISTORY			; DETAILED

   (2)     100  DECLARATIONS

   (3)     100  RMSRESET - IMAGE I/O SEGMENT RESET

RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   1

X0001                                                                                                                            (1)



                                     0000   100 	.TITLE	RMSRESET - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE

                                     0000   200 	.IDENT	/X0001/

                                     0000   300 ;

                                     0000   400 ; COPYRIGHT (C) 1977

                                     0000   500 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

                                     0000   600 ;

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

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

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

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

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

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

                                     0000  1300 ; REMAIN IN DEC.

                                     0000  1400 ;

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

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

                                     0000  1700 ; CORPORATION.

                                     0000  1800 ;

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

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

                                     0000  2100 

                                     0000  2200 ;++

                                     0000  2300 ; FACILITY:	EXECUTIVE, IMAGE ACTIVE AND RESET ROUTINES

                                     0000  2400 ;

                                     0000  2500 ; ABSTRACT:	REINITIALIZES RMS IMAGE IO SEGMENT LIST HEADERS.

                                     0000  2600 ;

                                     0000  2700 ; ENVIRONMENT:	KERNEL MODE.

                                     0000  2800 ;

                                     0000  2900 ;--

                                     0000  3000 ;

                                     0000  3100 	.SBTTL	HISTORY			; DETAILED

                                     0000  3200 ;

                                     0000  3300 ; AUTHOR: LEO LAVERDURE	, CREATION DATE: 21-FEB-78

                                     0000  3400 ;

                                     0000  3500 ; MODIFIED BY:

                                     0000  3600 ;	, : VERSION

                                     0000  3700 ; 01	 -

RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   2

X0001           DECLARATIONS                                                                                                     (2)



                                     0000   100 	.SBTTL	DECLARATIONS

                                     0000   200 

                                     0000   300 ;

                                     0000   400 ; INCLUDE FILES:

                                     0000   500 ;

                                     0000   600 	$IMPDEF				;RMS IMPURE AREA DEFINITIONS

                                     0000   700 	$SSDEF				;SYSTEM STATUS DEFINITIONS

                                     0000   800 ;

                                     0000   900 ; EXTERNAL SYMBOLS:

                                     0000  1000 ;

                                     0000  1100 

                                     0000  1200 ;

                                     0000  1300 ; MACROS:

                                     0000  1400 ;

                                     0000  1500 ;

                                     0000  1600 ; EQUATED SYMBOLS:

                                     0000  1700 ;

                                     0000  1800 ;

                                     0000  1900 ; OWN STORAGE:

                                     0000  2000 ;

RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   3

X0001           RMSRESET - IMAGE I/O SEGMENT RESET                                                                               (3)



                                     0000   100 	.SBTTL	RMSRESET - IMAGE I/O SEGMENT RESET

                                     0000   200 

                                     0000   300 ;++

                                     0000   400 ; FUNCTIONAL DESCRIPTION:

                                     0000   500 ;

                                     0000   600 ;

                                     0000   700 ; CALLING SEQUENCE:

                                     0000   800 ;

                                     0000   900 ;	BSBW	RM$RESET

                                     0000  1000 ;		MAY BE CALLED FROM EITHER EXEC OR KERNEL MODE

                                     0000  1100 ;

                                     0000  1200 ;

                                     0000  1300 ; INPUT PARAMETERS:

                                     0000  1400 ;

                                     0000  1500 ; IMPLICIT INPUTS:

                                     0000  1600 ;

                                     0000  1700 ;	NONE

                                     0000  1800 ;

                                     0000  1900 ; OUTPUT PARAMETERS:

                                     0000  2000 ;

                                     0000  2100 ;	RESETS THE IMAGE I/O FREE PAGE LIST TO EMPTY

                                     0000  2200 ;	RESETS THE IMAGE I/O FREE SPACE LIST TO EMPTY

                                     0000  2300 ;	ZEROES THE IMAGE I/O SEGEMENT BASE ADDRESS AND LENGTH

                                     0000  2400 ;	ZEROES THE IMAGE I/O IFAB AND IRAB TABLE LINK ADDRESSES

                                     0000  2500 ;	IF NO ACTIVE IMAGE I/O IFABS, EXITS WITH SUCCESS, ELSE

                                     0000  2600 ;		ZEROES THE # OF ACTIVE IFABS

                                     0000  2700 ;		ZEROES THE IMAGE I/O IFAB AND IRAB TABLES

                                     0000  2800 ;		EXIT WITH STATUS SS$_MUSTCLOSEFL

                                     0000  2900 ;

                                     0000  3000 ;	R0 = ERROR STATUS CODE

                                     0000  3100 ;	R1,R2 ARE DESTROYED

                                     0000  3200 ;

                                     0000  3300 ; IMPLICIT OUTPUTS:

                                     0000  3400 ;	NONE

                                     0000  3500 ;

                                     0000  3600 ; COMPLETION CODES:

                                     0000  3700 ;	SEE ABOVE

                                     0000  3800 ;

                                     0000  3900 ; SIDE EFFECTS:

                                     0000  4000 ;	

                                     0000  4100 ;	IF AN ERROR IS RETURNED, THE IMAGE I/O FILES CANNOT BE RUN DOWN.

                                     0000  4200 ;	THIS IS OF LITTLE CONSEQUENCE AS THIS IS AN ERROR CONDITION

                                     0000  4300 ;	ARISING FROM THE CLI'S FAILURE TO DO THE RUNDOWN BEFORE STARTING

                                     0000  4400 ;	ANOTHER IMAGE.  THE IMAGE MAY BE STARTED.

                                     0000  4500 ;

                                     0000  4600 ;--

                                     0000  4700 

                                     0000  4800 ;

                                     0000  4900 ; **********************************************************************

                                     0000  5000 ;

                                     0000  5100 ; **************** THE FOLLOWING CODE MAY BE PAGED *****************

                                     0000  5200 ;

                                 00000000  5300 	.PSECT	Y$EXEPAGED

                                     0000  5400 ;

                                     0000  5500 ; **********************************************************************

                                     0000  5600 ;

                                     0000  5700 RM$RESET::

RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   4

X0001           RMSRESET - IMAGE I/O SEGMENT RESET                                                                               (3)



            52   00000000'9F     DE  0000  5800 	MOVAL	@#PIO$GL_IIOFSPLH,R2	;RMS FREE PAGE LIST HEAD

            62            52     D0  0007  5900 	MOVL	R2,(R2)			;MAKE THIS LIST EMPTY

         04 A2            52     D0  000A  6000 	MOVL	R2,4(R2)		;TAIL POINTS AT HEAD

                                 DE  000E  6100 	MOVAL	W^<PIO$GW_IIOIMPA -	;FORM ADDRESS OF IMAGE I/O

            52       000C'C2         000F  6200 		+IMP$L_FREEPGLH-PIO$GL_IIOFSPLH>(R2),R2 ;FREE PAGE LIST

            62            52     D0  0013  6300 	MOVL	R2,(R2)			;MAKE THE LIST EMPTY

         04 A2            52     D0  0016  6400 	MOVL	R2,4(R2)		;TAIL POINTS AT HEAD

                                     001A  6500 

                                     001A  6600 	ASSUME	IMP$L_IOSEGLEN EQ IMP$L_IOSEGADDR+4

                       F8 A2     7C  001A  6700 	CLRQ	<IMP$L_IOSEGADDR-IMP$L_FREEPGLH>(R2)	;NO IMAGE I/O SEGMENT

                       0C B2     D4  001D  6800 	CLRL	@IMP$L_IFABTBL-IMP$L_FREEPGLH(R2)	;ZERO IFAB TABLE LINK

                       10 B2     D4  0020  6900 	CLRL	@IMP$L_IRABTBL-IMP$L_FREEPGLH(R2)	;ZERO IRAB TABLE LINK

                       16 A2     B5  0023  7000 	TSTW	IMP$W_NUM_IFABS-IMP$L_FREEPGLH(R2)	;ANY ACTIVE IFABS?

                          04     12  0026  7100 	BNEQ	10$					;BRANCH IF NOT

            50            01     D0  0028  7200 	MOVL	#1,R0					;SHOW SUCCESS

                                 05  002B  7300 	RSB						;BACK TO CALLER

                                     002C  7400 ;

                                     002C  7500 ;  I/O RUNDOWN NOT DONE!!

                                     002C  7600 ;

                                     002C  7700 ;  JUST CLEAR THE IFAB AND IRAB TABLE POINTERS SO THAT RMS CAN CONTINUE.

                                     002C  7800 ;

                                     002C  7900 ;  (ASSUMES THAT THE IFAB TABLE IS IMMEDIATELY FOLLOWED BY THE IRAB TABLE.)

                                     002C  8000 ;

                       16 A2     B4  002C  8100 10$:	CLRW	IMP$W_NUM_IFABS-IMP$L_FREEPGLH(R2)	;SAY NO ACTIVE IFABS

            52         0C A2     D0  002F  8200 	MOVL	IMP$L_IFABTBL-IMP$L_FREEPGLH(R2),R2	;GET ADDR OF IFAB TABLE

            51            10     D0  0033  8300 	MOVL	#IMP$C_ENTPERSEG+1,R1			; # OF QUADWORDS TO ZERO

                          82     7C  0036  8400 20$:	CLRQ	(R2)+					;ZERO IFAB AND IRAB ADDRS

            FB            51     F5  0038  8500 	SOBGTR	R1,20$					;LOOP

            50       0948 8F     3C  003B  8600 	MOVZWL	#SS$_MUSTCLOSEFL,R0			;FAILURE STATUS

                                 05  0040  8700 	RSB

                                     0041  8800 

                                     0041  8900 

                                     0041  9000 	.END

RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   5

SYMBOL TABLE                                                                                                                     (3)



BIT...         = 00000000            SS$_COMPAT     = 0000042C            SS$_ILLIOFUNC  = 000000F4            

GBL...         = 00000000            SS$_CONTINUE   = 00000001            SS$_ILLLBLAST  = 00000968            

IMP$B_PROT       00000002            SS$_CONTROLC   = 00000651            SS$_ILLPAGCNT  = 000000FC            

IMP$C_ASYEFN   = 0000001E            SS$_CONTROLO   = 00000609            SS$_ILLSEQOP   = 000002DC            

IMP$C_ASYQIOEFN= 0000001F            SS$_CONTROLY   = 00000611            SS$_ILLSER     = 00000104            

IMP$C_ENTPERSEG= 0000000F            SS$_CREATED    = 00000619            SS$_ILLUSRLBLRD= 00000958            

IMP$C_IOREFN   = 0000001E            SS$_CTRLERR    = 00000054            SS$_ILLUSRLBLWT= 00000960            

IMP$C_MBXEFN   = 0000001A            SS$_DATACHECK  = 0000005C            SS$_INCVOLLABEL= 0000010C            

IMP$C_NPIOFILES= 0000000C            SS$_DATAOVERUN = 00000838            SS$_INSFARG    = 00000114            

IMP$C_SYNCEFN  = 0000001B            SS$_DEBUG      = 0000046C            SS$_INSFMEM    = 00000124            

IMP$L_FREEPGLH   0000000C            SS$_DECOVF     = 000004A4            SS$_INSFRAME   = 0000012C            

IMP$L_IFABTBL    00000018            SS$_DEVACTIVE  = 000002C4            SS$_INSFWSL    = 0000011C            

IMP$L_IFBTBLINK  00000024            SS$_DEVALLOC   = 00000840            SS$_INTDIV     = 00000484            

IMP$L_IOSEGADDR  00000004            SS$_DEVALRALLOC= 00000641            SS$_INTOVF     = 0000047C            

IMP$L_IOSEGLEN   00000008            SS$_DEVASSIGN  = 00000848            SS$_IVADDR     = 00000134            

IMP$L_IRABTBL    0000001C            SS$_DEVFOREIGN = 00000064            SS$_IVCHAN     = 0000013C            

IMP$L_IRBTBLINK  00000064            SS$_DEVICEFULL = 00000850            SS$_IVCHNLSEC  = 0000026C            

IMP$L_SAVED_SP   00000014            SS$_DEVMOUNT   = 0000006C            SS$_IVDEVNAM   = 00000144            

IMP$V_AST      = 00000001            SS$_DEVNOTALLOC= 00000858            SS$_IVGSDNAM   = 0000014C            

IMP$V_IIOS     = 00000000            SS$_DEVNOTMBX  = 00000074            SS$_IVLOGNAM   = 00000154            

IMP$V_IORUNDOWN= 00000004            SS$_DEVNOTMOUNT= 0000007C            SS$_IVLOGTAB   = 0000015C            

IMP$V_NOP0BUFS = 00000005            SS$_DEVOFFLINE = 00000084            SS$_IVPROTECT  = 000002F4            

IMP$V_TEMP1    = 00000002            SS$_DIRFULL    = 00000860            SS$_IVQUOTAL   = 00000164            

IMP$V_TEMP2    = 00000003            SS$_DRVERR     = 0000008C            SS$_IVSECFLG   = 0000016C            

IMP$W_ENTPERSEG  00000020            SS$_DUPFILENAME= 00000868            SS$_IVSECIDCTL = 000002E4            

IMP$W_NUM_IFABS  00000022            SS$_DUPLNAM    = 00000094            SS$_IVSSRQ     = 00000174            

IMP$W_RMSSTATUS  00000000            SS$_ENDOFFILE  = 00000870            SS$_IVSTSFLG   = 0000017C            

PIO$GL_IIOFSPLH  ********   X   03   SS$_ENDOFTAPE  = 00000878            SS$_IVTIME     = 00000184            

PIO$GW_IIOIMPA   ********   X   03   SS$_ENDOFUSRLBL= 00000970            SS$_LCKPAGFUL  = 000000D4            

RM$RESET         00000000 RG    03   SS$_EXQUOTA    = 0000001C            SS$_LENVIO     = 0000018C            

SS$_ABORT      = 0000002C            SS$_EXTIDXFILE = 00000880            SS$_LKWSETFUL  = 00000194            

SS$_ACCONFLICT = 00000800            SS$_FCPREADERR = 00000888            SS$_MBFULL     = 000008D8            

SS$_ACCVIO     = 0000000C            SS$_FCPREPSTN  = 00000988            SS$_MBTOOSML   = 0000019C            

SS$_ACPVAFUL   = 000002FC            SS$_FCPREWNDERR= 00000890            SS$_MCHECK     = 000002BC            

SS$_ARTRES     = 00000474            SS$_FCPSPACERR = 00000898            SS$_MEDOFL     = 000001A4            

SS$_ASTFLT     = 0000040C            SS$_FCPWRITERR = 000008A0            SS$_MSGNOTFND  = 00000621            

SS$_BADATTRIB  = 00000034            SS$_FILACCERR  = 0000009C            SS$_MTLBLLONG  = 00000304            

SS$_BADCHKSUM  = 00000808            SS$_FILALRACC  = 000000A4            SS$_MUSTCLOSEFL= 00000948            

SS$_BADESCAPE  = 0000003C            SS$_FILELOCKED = 000008A8            SS$_NOAQB      = 00000314            

SS$_BADFILEHDR = 00000810            SS$_FILENUMCHK = 000008B0            SS$_NODATA     = 000001AC            

SS$_BADFILENAME= 00000818            SS$_FILESEQCHK = 000008B8            SS$_NOHANDLER  = 000008F8            

SS$_BADFILEVER = 00000820            SS$_FILESTRUCT = 000008C0            SS$_NOHOMEBLK  = 000008E0            

SS$_BADIMGHDR  = 00000044            SS$_FILNOTACC  = 000000AC            SS$_NOIOCHAN   = 000001B4            

SS$_BADIRECTORY= 00000828            SS$_FILNOTCNTG = 000002AC            SS$_NOLINKS    = 0000027C            

SS$_BADPARAM   = 00000014            SS$_FILNOTEXP  = 000000B4            SS$_NOLOGNAM   = 000001BC            

SS$_BADSTACK   = 000002B4            SS$_FLTDIV     = 00000494            SS$_NOMBX      = 00000274            

SS$_BEGOFFILE  = 00000938            SS$_FLTOVF     = 0000048C            SS$_NOMOREFILES= 00000930            

SS$_BLOCKCNTERR= 00000940            SS$_FLTUND     = 0000049C            SS$_NONEXDRV   = 000001C4            

SS$_BREAK      = 00000414            SS$_FORMAT     = 000000BC            SS$_NONEXPR    = 000008E8            

SS$_BUFBYTALI  = 0000030C            SS$_GPTFULL    = 000000C4            SS$_NONLOCAL   = 000008F0            

SS$_BUFFEROVF  = 00000601            SS$_GSDFULL    = 000000CC            SS$_NOPRIV     = 00000024            

SS$_BUGCHECK   = 000002A4            SS$_HANGUP     = 000002CC            SS$_NORMAL     = 00000001            

SS$_CANCEL     = 00000830            SS$_HEADERFULL = 000008C8            SS$_NOSIGNAL   = 00000900            

SS$_CHANINTLK  = 0000004C            SS$_IDXFILEFULL= 000008D0            SS$_NOSOLICIT  = 00000284            

SS$_CLIFRCEXT  = 00000980            SS$_ILLBLKNUM  = 000000DC            SS$_NOSUCHDEV  = 00000908            

SS$_CMODSUPR   = 0000041C            SS$_ILLCNTRFUNC= 000000E4            SS$_NOSUCHFILE = 00000910            

SS$_CMODUSER   = 00000424            SS$_ILLEFC     = 000000EC            SS$_NOSUCHNODE = 0000028C            

RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   6

SYMBOL TABLE                                                                                                                     (3)



SS$_NOSUCHSEC  = 00000978            

SS$_NOTAPEOP   = 00000264            

SS$_NOTFILEDEV = 000001CC            

SS$_NOTINTBLSZ = 000001D4            

SS$_NOTLABELMT = 000001DC            

SS$_NOTMODIFIED= 00000659            

SS$_NOTNETDEV  = 000002EC            

SS$_NOTRAN     = 00000629            

SS$_NOTSQDEV   = 000001E4            

SS$_OPCCUS     = 00000434            

SS$_OPCDEC     = 0000043C            

SS$_OPINCOMPL  = 000002D4            

SS$_PAGOWNVIO  = 000001EC            

SS$_PAGRDERR   = 00000444            

SS$_PARITY     = 000001F4            

SS$_PARTESCAPE = 000001FC            

SS$_PFMBSY     = 00000204            

SS$_PLHLDR     = 00000404            

SS$_PSTFULL    = 0000020C            

SS$_RADRMOD    = 0000044C            

SS$_REJECT     = 00000294            

SS$_REMOTE     = 00000649            

SS$_RESIGNAL   = 00000918            

SS$_RESULTOVF  = 00000214            

SS$_ROPRAND    = 00000454            

SS$_SECTBLFUL  = 0000021C            

SS$_SSFAIL     = 0000045C            

SS$_SUBRNG     = 000004AC            

SS$_SUPERSEDE  = 00000631            

SS$_TAPEPOSLOST= 00000224            

SS$_TBIT       = 00000464            

SS$_TIMEOUT    = 0000022C            

SS$_TOOMANYVER = 00000990            

SS$_TOOMUCHDATA= 0000029C            

SS$_UNASEFC    = 00000234            

SS$_UNSAFE     = 0000023C            

SS$_UNWIND     = 00000920            

SS$_UNWINDING  = 00000928            

SS$_VASFULL    = 00000244            

SS$_VECINUSE   = 0000024C            

SS$_VOLINV     = 00000254            

SS$_WAITUSRLBL = 00000950            

SS$_WASCLR     = 00000001            

SS$_WASECC     = 00000639            

SS$_WASSET     = 00000009            

SS$_WRITLCK    = 0000025C            

SS$_WRONGACP   = 0000031C            





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

Y$EXEPAGED       00000041      03     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD    WRT BYTE  





RMSRESET        - RMS IMAGE I/O SEGMENT REINITIALIZE ROUTINE     21-AUG-1978 20:08:01   VAX-11 MACRO X0.3-11               Page   7

PROGRAM SECTION SYNOPSIS                                                                                                         (3)



THERE WERE NO ERRORS OR WARNINGS.

17932. BYTES LEFT IN FREE MEMORY POOL.

3802. BYTES OF RECLAIMED MEMORY.

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

4 MLB DIR RDS - 386 GETS TO DEFINE 12 MACROS. 26 INTER. FILE WRITES. 

