

; Bliss-32 10.1-416	Monday 21-AUG-1978 23:18:26	DBB3:[F11B.SRC]MOUNT.B32;3					Page 1

;

;	0001	MODULE MOUNT (

;	0002			LANGUAGE (BLISS32),

;	0003			IDENT = 'B0001'

;	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:  F11ACP Structure Level 2

;	0029	!

;	0030	! ABSTRACT:

;	0031	!

;	0032	!	This routine performs the MOUNT function.

;	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:  10-May-1978  14:12

;	0043	!

;	0044	! REVISION HISTORY:

;	0045	!

;	0046	!**

;	0047	

;	0048	

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

;	0050	REQUIRE 'SRC$:FCPDEF.B32';

;	0399	

;	0400	

;	0401	FORWARD ROUTINE

;	0402		MOUNT,				! main MOUNT routine

;	0403		SET_MOUNTED;			! set mounted bit in UCB



; Bliss-32 10.1-416	Monday 21-AUG-1978 23:18:26	DBB3:[F11B.SRC]MOUNT.B32;3					Page 1-1

;



; Bliss-32 10.1-416	Monday 21-AUG-1978 23:18:26	DBB3:[F11B.SRC]MOUNT.B32;3					Page 2

;

;	0404	GLOBAL ROUTINE MOUNT =

;	0405	

;	0406	!++

;	0407	!

;	0408	! FUNCTIONAL DESCRIPTION:

;	0409	!

;	0410	!	This routine performs the MOUNT function. It checks that the ACP

;	0411	!	is of the correct type and then turns on the mounted bits in the UCB.

;	0412	!

;	0413	!

;	0414	! CALLING SEQUENCE:

;	0415	!	MOUNT ()

;	0416	!

;	0417	! INPUT PARAMETERS:

;	0418	!	NONE

;	0419	!

;	0420	! IMPLICIT INPUTS:

;	0421	!	NONE

;	0422	!

;	0423	! OUTPUT PARAMETERS:

;	0424	!	NONE

;	0425	!

;	0426	! IMPLICIT OUTPUTS:

;	0427	!	NONE

;	0428	!

;	0429	! ROUTINE VALUE:

;	0430	!	NONE

;	0431	!

;	0432	! SIDE EFFECTS:

;	0433	!	volume enabled for I/O

;	0434	!

;	0435	!--

;	0436	

;	0437	BEGIN

;	0438	

;	0439	EXTERNAL

;	0440		QUEUE_HEAD	: REF BBLOCK;	! ACP queue header

;	0441	

;	0442	

;	0443	! Check the ACP type code in the AQB, having been set by the MOUNT command

;	0444	! to indicate the nature of the device.

;	0445	!

;	0446	

;	0447	IF .QUEUE_HEAD[AQB$B_ACPTYPE] NEQ AQB$K_F11V2

;	0448	THEN ERR_EXIT (SS$_WRONGACP);

;	0449	

;	0450	KERNEL_CALL (SET_MOUNTED);

;	0451	

;	0452	RETURN 1;

;	0453	

;	0454	END;					! end of routine MOUNT





							    .TITLE  MOUNT

							    .IDENT  \B0001\



; Bliss-32 10.1-416	Monday 21-AUG-1978 23:18:26	DBB3:[F11B.SRC]MOUNT.B32;3					Page 2-1

;



							    .EXTRN  QUEUE_HEAD, SYS$CMKRNL



							    .PSECT  $CODE$,NOWRT,2



					 0000 00000 	    .ENTRY  MOUNT, Save nothing					      ; 0404

		         50 	0000G  CF  D0 00002 	    MOVL    QUEUE_HEAD, R0					      ; 0447

		         02 	  15   A0  91 00007 	    CMPB    21(R0), #2						      ;

				       06  13 0000B 	    BEQL    1$							      ;

				031C   8F  BF 0000D 	    CHMU    #796						      ; 0448

				       13  11 00011 	    BRB     2$							      ;

				       7E  D4 00013 1$:     CLRL    -(SP)						      ; 0450

				       5E  DD 00015 	    PUSHL   SP							      ;

				0000V  CF  9F 00017 	    PUSHAB  SET_MOUNTED						      ;

	      00000000G  9F	       03  FB 0001B 	    CALLS   #3, @#SYS$CMKRNL					      ;

		         50 	       01  D0 00022 	    MOVL    #1, R0						      ; 0452

					   04 00025 	    RET     							      ;

				       50  D4 00026 2$:     CLRL    R0							      ; 0404

					   04 00028 	    RET     							      ;



; Routine Size:  41 bytes







; Bliss-32 10.1-416	Monday 21-AUG-1978 23:18:26	DBB3:[F11B.SRC]MOUNT.B32;3					Page 3

;

;	0455	ROUTINE SET_MOUNTED =

;	0456	

;	0457	!++

;	0458	!

;	0459	! FUNCTIONAL DESCRIPTION:

;	0460	!

;	0461	

;	0462	!	This routine sets the mounted bit in the UCB.

;	0463	!

;	0464	!

;	0465	! CALLING SEQUENCE:

;	0466	!

;	0467	! INPUT PARAMETERS:

;	0468	!	NONE

;	0469	!

;	0470	! IMPLICIT INPUTS:

;	0471	!	CURRENT_UCB: address of device UCB

;	0472	!

;	0473	! OUTPUT PARAMETERS:

;	0474	!	NONE

;	0475	!

;	0476	! IMPLICIT OUTPUTS:

;	0477	!	NONE

;	0478	!

;	0479	! ROUTINE VALUE:

;	0480	!	1

;	0481	!

;	0482	! SIDE EFFECTS:

;	0483	!	mounted bit set

;	0484	!

;	0485	!--

;	0486	

;	0487	BEGIN

;	0488	

;	0489	EXTERNAL

;	0490		CURRENT_UCB	: REF BBLOCK;	! UCB of device

;	0491	

;	0492	

;	0493	! Set the bits in the UCB.

;	0494	!

;	0495	

;	0496	CURRENT_UCB[UCB$L_DEVCHAR] = .CURRENT_UCB[UCB$L_DEVCHAR] OR

;	0497		(DEV$M_MNT OR DEV$M_DIR);

;	0498	

;	0499	RETURN 1;

;	0500	

;	0501	END;					! end of routine SET_MOUNTED







							    .EXTRN  CURRENT_UCB



					 0000 00029 SET_MOUNTED:

							    .WORD   Save nothing					      ; 0455

		         50 	0000G  CF  D0 0002B 	    MOVL    CURRENT_UCB, R0					      ; 0496



; Bliss-32 10.1-416	Monday 21-AUG-1978 23:18:26	DBB3:[F11B.SRC]MOUNT.B32;3					Page 3-1

;

		    34   A0 00080008   8F  C8 00030 	    BISL2   #524296, 52(R0)					      ;

		         50 	       01  D0 00038 	    MOVL    #1, R0						      ; 0499

					   04 0003B 	    RET     							      ; 0455



; Routine Size:  19 bytes





;	0502	

;	0503	END

;	0504	ELUDOM













;				       PSECT SUMMARY

;

;	Name		 Bytes			       Attributes

;

;  $CODE$         	    60  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        13         0       228











; Size:		60 code + 0 data bytes

; Run Time:	00:04.0

; Elapsed Time:	00:11.3

; Memory Used:	248 pages

; Compilation Complete

