

; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 1

; Digital Equipment Corporation

;

;	0001	MODULE INIMFD (

;	0002			LANGUAGE (BLISS32),

;	0003			IDENT = 'X0005'

;	0004			) =

;	0005	BEGIN

;	0006	

;	0007	!

;	0008	! Copyright (c) 1977

;	0009	! Digital Equipment Corporation, Maynard, Massachusetts 01754

;	0010	!

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

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

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

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

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

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

;	0017	! remain in DEC.

;	0018	!

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

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

;	0021	! Corporation.

;	0022	!

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

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

;	0025	

;	0026	!++

;	0027	!

;	0028	! FACILITY:  INIT Utility Structure Level 1

;	0029	!

;	0030	! ABSTRACT:

;	0031	!

;	0032	!	This routine writes the initial master file directory.

;	0033	!

;	0034	! ENVIRONMENT:

;	0035	!

;	0036	!	STARLET operating system, including privileged system services

;	0037	!	and internal exec routines.

;	0038	!

;	0039	!--

;	0040	!

;	0041	!

;	0042	! AUTHOR:  Andrew C. Goldstein,	 CREATION DATE:  14-Nov-1977  19:19

;	0043	!

;	0044	! REVISION HISTORY:

;	0045	!

;	0046	!   Andrew C. Goldstein, 5-Jan-1978  19:17

;	0047	!   X0002 - Correct file ID's in MFD

;	0048	!

;	0049	!   Andrew C. Goldstein, 14-Jan-1978  0:37

;	0050	!   X0003 - Directory structure change

;	0051	!

;	0052	!   Andrew C. Goldstein, 23-May-78  11:33

;	0053	!   X0004 - Add Structure Level 2 reserved files

;	0054	!

;	0055	!   Andrew C. Goldstein, 7-Jun-78  20:50



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 1-1

; Digital Equipment Corporation

;

;	0056	!   X0005 - Add structure level 1

;	0057	!

;	0058	!**

;	0059	

;	0060	

;	0061	LIBRARY 'SYS$LIBRARY:LIB.L32';

;	0062	REQUIRE 'SRC$:INIDEF.B32';

;	0324	REQUIRE 'LIBD$:[VMSLIB.OBJ]INITMSG.B32';



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 2

; Digital Equipment Corporation

;

;	0384	!+

;	0385	!

;	0386	! The following are the records of the initial MFD for structure level 1.

;	0387	!

;	0388	!-

;	0389	

;	0390	BIND

;	0391		INITIAL_MFD1 = PLIT (

;	0392							! index file

;	0393		WORD (1, 1, 0),				! file ID

;	0394		WORD (%RAD50_11 'INDEXF   SYS'),	! file name

;	0395		WORD (1),				! version number

;	0396	

;	0397							! storage bitmap file

;	0398		WORD (2, 2, 0),				! file ID

;	0399		WORD (%RAD50_11 'BITMAP   SYS'),	! file name

;	0400		WORD (1),				! version number

;	0401	

;	0402							! bad block file

;	0403		WORD (3, 3, 0),				! file ID

;	0404		WORD (%RAD50_11 'BADBLK   SYS'),	! file name

;	0405		WORD (1),				! version number

;	0406	

;	0407							! MFD (itself)

;	0408		WORD (4, 4, 0),				! file ID

;	0409		WORD (%RAD50_11 '000000   DIR'),	! file name

;	0410		WORD (1),				! version number

;	0411	

;	0412							! core image file

;	0413		WORD (5, 5, 0),				! file ID

;	0414		WORD (%RAD50_11 'CORIMG   SYS'),	! file name

;	0415		WORD (1)				! version number

;	0416		);

;	0417	

;	0418	!+

;	0419	!

;	0420	! The following are the records of the initial MFD for structure level 2.

;	0421	!

;	0422	!-

;	0423	

;	0424	BIND

;	0425		INITIAL_MFD = PLIT (

;	0426						! MFD (itself)

;	0427		WORD (22),			! record byte count

;	0428		WORD (1),			! version limit

;	0429		BYTE (0),			! flags

;	0430		BYTE (10),			! name byte count

;	0431		BYTE ('000000.DIR'),		! name string

;	0432		WORD (1),			! version number

;	0433		WORD (4, 4, 0),			! file ID

;	0434	

;	0435						! backup journal file

;	0436		WORD (22),			! record byte count

;	0437		WORD (1),			! version limit

;	0438		BYTE (0),			! flags



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 2-1

; Digital Equipment Corporation

;

;	0439		BYTE (10),			! name byte count

;	0440		BYTE ('BACKUP.SYS'),		! name string

;	0441		WORD (1),			! version number

;	0442		WORD (8, 8, 0),			! file ID

;	0443	

;	0444						! bad block file

;	0445		WORD (22),			! record byte count

;	0446		WORD (1),			! version limit

;	0447		BYTE (0),			! flags

;	0448		BYTE (10),			! name byte count

;	0449		BYTE ('BADBLK.SYS'),		! name string

;	0450		WORD (1),			! version number

;	0451		WORD (3, 3, 0),			! file ID

;	0452	

;	0453						! pending bad block log

;	0454		WORD (22),			! record byte count

;	0455		WORD (1),			! version limit

;	0456		BYTE (0),			! flags

;	0457		BYTE (10),			! name byte count

;	0458		BYTE ('BADLOG.SYS'),		! name string

;	0459		WORD (1),			! version number

;	0460		WORD (9, 9, 0),			! file ID

;	0461	

;	0462						! storage bitmap file

;	0463		WORD (22),			! record byte count

;	0464		WORD (1),			! version limit

;	0465		BYTE (0),			! flags

;	0466		BYTE (10),			! name byte count

;	0467		BYTE ('BITMAP.SYS'),		! name string

;	0468		WORD (1),			! version number

;	0469		WORD (2, 2, 0),			! file ID

;	0470	

;	0471						! standard continuation file

;	0472		WORD (22),			! record byte count

;	0473		WORD (1),			! version limit

;	0474		BYTE (0),			! flags

;	0475		BYTE (10),			! name byte count

;	0476		BYTE ('CONTIN.SYS'),		! name string

;	0477		WORD (1),			! version number

;	0478		WORD (7, 7, 0),			! file ID

;	0479	

;	0480						! core image file

;	0481		WORD (22),			! record byte count

;	0482		WORD (1),			! version limit

;	0483		BYTE (0),			! flags

;	0484		BYTE (10),			! name byte count

;	0485		BYTE ('CORIMG.SYS'),		! name string

;	0486		WORD (1),			! version number

;	0487		WORD (5, 5, 0),			! file ID

;	0488	

;	0489						! index file

;	0490		WORD (22),			! record byte count

;	0491		WORD (1),			! version limit

;	0492		BYTE (0),			! flags

;	0493		BYTE (10),			! name byte count



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 2-2

; Digital Equipment Corporation

;

;	0494		BYTE ('INDEXF.SYS'),		! name string

;	0495		WORD (1),			! version number

;	0496		WORD (1, 1, 0),			! file ID

;	0497	

;	0498						! volume set list file

;	0499		WORD (22),			! record byte count

;	0500		WORD (1),			! version limit

;	0501		BYTE (0),			! flags

;	0502		BYTE (10),			! name byte count

;	0503		BYTE ('VOLSET.SYS'),		! name string

;	0504		WORD (1),			! version number

;	0505		WORD (6, 6, 0),			! file ID

;	0506	

;	0507		WORD (-1)			! end marker

;	0508	

;	0509		);



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 3

; Digital Equipment Corporation

;

;	0510	GLOBAL ROUTINE INIT_MFD : NOVALUE =

;	0511	

;	0512	!++

;	0513	!

;	0514	! FUNCTIONAL DESCRIPTION:

;	0515	!

;	0516	!	This routine writes the initial master file directory.

;	0517	!

;	0518	!

;	0519	! CALLING SEQUENCE:

;	0520	!	INIT_MFD ()

;	0521	!

;	0522	! INPUT PARAMETERS:

;	0523	!	NONE

;	0524	!

;	0525	! IMPLICIT INPUTS:

;	0526	!	allocation table in INIDSK

;	0527	!

;	0528	! OUTPUT PARAMETERS:

;	0529	!	NONE

;	0530	!

;	0531	! IMPLICIT OUTPUTS:

;	0532	!	NONE

;	0533	!

;	0534	! ROUTINE VALUE:

;	0535	!	NONE

;	0536	!

;	0537	! SIDE EFFECTS:

;	0538	!	initial MFD written

;	0539	!

;	0540	!--

;	0541	

;	0542	BEGIN

;	0543	

;	0544	EXTERNAL

;	0545		INIT_OPTIONS	: BITVECTOR,	! command option flags

;	0546		MFD_LBN,			! LBN of MFD file

;	0547		BUFFER		: BBLOCK;	! I/O buffer

;	0548	

;	0549	EXTERNAL ROUTINE

;	0550		WRITE_BLOCK;			! write a disk block

;	0551	

;	0552	

;	0553	! Simply copy the MFD records into the buffer, zero filled and write it.

;	0554	!

;	0555	

;	0556	IF .INIT_OPTIONS[OPT_STRUCTURE1]

;	0557	THEN

;	0558	    CH$COPY (.(INITIAL_MFD1-4)*4, INITIAL_MFD1,

;	0559		     0, 512, BUFFER)

;	0560	ELSE

;	0561	    CH$COPY (.(INITIAL_MFD-4)*4, INITIAL_MFD,

;	0562		     0, 512, BUFFER);

;	0563	

;	0564	WRITE_BLOCK (.MFD_LBN, BUFFER);



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 3-1

; Digital Equipment Corporation

;

;	0565	

;	0566	END;					! end of routine INIT_MFD





							    .TITLE  INIMFD

							    .IDENT  \X0005\



							    .PSECT  $PLIT$,NOWRT,NOEXE,2



					      00000	    .LONG   20

					      00004 P.AAA:  .WORD   1, 1, 0						      ;

					      0000A 	    .RAD50  \INDEXF   SYS\					      ;

					      00012 	    .WORD   1							      ;

					      00014 	    .WORD   2, 2, 0						      ;

					      0001A 	    .RAD50  \BITMAP   SYS\					      ;

					      00022 	    .WORD   1							      ;

					      00024 	    .WORD   3, 3, 0						      ;

					      0002A 	    .RAD50  \BADBLK   SYS\					      ;

					      00032 	    .WORD   1							      ;

					      00034 	    .WORD   4, 4, 0						      ;

					      0003A 	    .RAD50  \000000   DIR\					      ;

					      00042 	    .WORD   1							      ;

					      00044 	    .WORD   5, 5, 0						      ;

					      0004A 	    .RAD50  \CORIMG   SYS\					      ;

					      00052 	    .WORD   1							      ;

					      00054	    .LONG   55

					      00058 P.AAB:  .WORD   22							      ;

					      0005A 	    .WORD   1							      ;

					      0005C 	    .BYTE   0							      ;

					      0005D 	    .BYTE   10							      ;

					      0005E 	    .ASCII  \000000.DIR\					      ;

					      00068 	    .WORD   1							      ;

					      0006A 	    .WORD   4, 4, 0						      ;

					      00070 	    .WORD   22							      ;

					      00072 	    .WORD   1							      ;

					      00074 	    .BYTE   0							      ;

					      00075 	    .BYTE   10							      ;

					      00076 	    .ASCII  \BACKUP.SYS\					      ;

					      00080 	    .WORD   1							      ;

					      00082 	    .WORD   8, 8, 0						      ;

					      00088 	    .WORD   22							      ;

					      0008A 	    .WORD   1							      ;

					      0008C 	    .BYTE   0							      ;

					      0008D 	    .BYTE   10							      ;

					      0008E 	    .ASCII  \BADBLK.SYS\					      ;

					      00098 	    .WORD   1							      ;

					      0009A 	    .WORD   3, 3, 0						      ;

					      000A0 	    .WORD   22							      ;

					      000A2 	    .WORD   1							      ;

					      000A4 	    .BYTE   0							      ;

					      000A5 	    .BYTE   10							      ;

					      000A6 	    .ASCII  \BADLOG.SYS\					      ;

					      000B0 	    .WORD   1							      ;

					      000B2 	    .WORD   9, 9, 0						      ;

					      000B8 	    .WORD   22							      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 3-2

; Digital Equipment Corporation

;

					      000BA 	    .WORD   1							      ;

					      000BC 	    .BYTE   0							      ;

					      000BD 	    .BYTE   10							      ;

					      000BE 	    .ASCII  \BITMAP.SYS\					      ;

					      000C8 	    .WORD   1							      ;

					      000CA 	    .WORD   2, 2, 0						      ;

					      000D0 	    .WORD   22							      ;

					      000D2 	    .WORD   1							      ;

					      000D4 	    .BYTE   0							      ;

					      000D5 	    .BYTE   10							      ;

					      000D6 	    .ASCII  \CONTIN.SYS\					      ;

					      000E0 	    .WORD   1							      ;

					      000E2 	    .WORD   7, 7, 0						      ;

					      000E8 	    .WORD   22							      ;

					      000EA 	    .WORD   1							      ;

					      000EC 	    .BYTE   0							      ;

					      000ED 	    .BYTE   10							      ;

					      000EE 	    .ASCII  \CORIMG.SYS\					      ;

					      000F8 	    .WORD   1							      ;

					      000FA 	    .WORD   5, 5, 0						      ;

					      00100 	    .WORD   22							      ;

					      00102 	    .WORD   1							      ;

					      00104 	    .BYTE   0							      ;

					      00105 	    .BYTE   10							      ;

					      00106 	    .ASCII  \INDEXF.SYS\					      ;

					      00110 	    .WORD   1							      ;

					      00112 	    .WORD   1, 1, 0						      ;

					      00118 	    .WORD   22							      ;

					      0011A 	    .WORD   1							      ;

					      0011C 	    .BYTE   0							      ;

					      0011D 	    .BYTE   10							      ;

					      0011E 	    .ASCII  \VOLSET.SYS\					      ;

					      00128 	    .WORD   1							      ;

					      0012A 	    .WORD   6, 6, 0						      ;

					      00130 	    .WORD   -1							      ;

					      00132	    .BLKB   2



						    INITIAL_MFD1=	P.AAA

						    INITIAL_MFD=	P.AAB

							    .GLOBL  INIT_OPTIONS, MFD_LBN, BUFFER, WRITE_BLOCK



							    .PSECT  $CODE$,NOWRT,2



					 083C 00000 	    .ENTRY  INIT_MFD, Save R2,R3,R4,R5,R11			      ; 0510

		         5B	0000G  CF  9E 00002 	    MOVAB   BUFFER, R11						      ;

	   12	  0000G  CF	       07  E1 00007 	    BBC     #7, INIT_OPTIONS+3, 1$				      ; 0556

	   50	  0000'  CF	       02  78 0000D 	    ASHL    #2, INITIAL_MFD1-4, R0				      ; 0558

	   00	  0000'  CF	       50  2C 00013 	    MOVC5   R0, INITIAL_MFD1, #0, #512, BUFFER			      ;

		         6B	0200   8F     00019									      ;

				       10  11 0001D 	    BRB     2$							      ; 0556

	   50	  0000'  CF	       02  78 0001F 1$:     ASHL    #2, INITIAL_MFD-4, R0				      ; 0561

	   00	  0000'  CF	       50  2C 00025 	    MOVC5   R0, INITIAL_MFD, #0, #512, BUFFER			      ;

		         6B	0200   8F     0002B									      ;

				       5B  DD 0002F 2$:     PUSHL   R11							      ; 0564

				0000G  CF  DD 00031 	    PUSHL   MFD_LBN						      ;



; Bliss-32 7.352	Saturday 22-AUG-1978 00:24:59	DBB3:[INIT.SRC]INIMFD.B32;10					Page 3-3

; Digital Equipment Corporation

;

		  0000G  CF	       02  FB 00035 	    CALLS   #2, WRITE_BLOCK					      ;

					   04 0003A 	    RET     							      ; 0510



; Routine Size:  59 bytes





;	0567	

;	0568	END

;	0569	ELUDOM













;				       PSECT SUMMARY

;

;	Name		 Bytes			       Attributes

;

;  $PLIT$         	   308  NOWRT,  RD ,NOEXE,NOSHR,  LCL,  REL,  CON,NOPIC,ALIGN(2)

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









;				LIBRARY STATISTICS

;

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

;	File				     Total    Loaded   Percent      Read

;

;  DBA4:[SYSLIB]LIB.L32;1		      5582         3         0       222











; Size:		59 code + 308 data bytes

; Run Time:	00:10.0

; Elapsed Time:	00:22.2

; Memory Used:	260 pages

; Compilation Complete

