SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (1)    6200  CREATE MAILBOX

   (1)   25600  DELETE MAILBOX

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   1

01                                                                                                                               (1)



                                     0000   100 	.TITLE	SYSMAILBX - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXES

                                     0000   200 	.IDENT	/01/

                                     0000   300  

                                     0000   400 ;

                                     0000   500 ; COPYRIGHT (C) 1977

                                     0000   600 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.

                                     0000   700 ;

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

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

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

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

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

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

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

                                     0000  1500 ;

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

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

                                     0000  1800 ; EQUIPMENT CORPORATION.

                                     0000  1900 ;

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

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

                                     0000  2200 ;

                                     0000  2300 ; D. N. CUTLER 1-OCT-76

                                     0000  2400 ;

                                     0000  2500 ; SYSTEM SERVICES TO CREATE AND DELETE MAILBOXES

                                     0000  2600 ;

                                     0000  2700 ; MACRO LIBRARY CALLS

                                     0000  2800 ;

                                     0000  2900  

                                     0000  3000 	$CCBDEF				;DEFINE CCB OFFSETS

                                     0000  3100 	$CRBDEF				;DEFINE CRB OFFSETS

                                     0000  3200 	$DDBDEF				;DEFINE DDB OFFSETS

                                     0000  3300 	$DEVDEF				;DEFINE DEVICE CHARACTERISTIC BITS

                                     0000  3400 	$DYNDEF				;DEFINE DATA STRUCTURE TYPE CODES

                                     0000  3500 	$IPLDEF				;DEFINE INTERRUPT PRIORITY LEVELS

                                     0000  3600 	$LOGDEF				;DEFINE LOG OFFSETS

                                     0000  3700 	$PCBDEF				;DEFINE PCB OFFSETS

                                     0000  3800 	$PRDEF				;DEFINE PROCESSOR REGISTERS

                                     0000  3900 	$PRVDEF				;DEFINE PRIVILEGE BITS

                                     0000  4000 	$UCBDEF				;DEFINE UCB OFFSETS

                                     0000  4100  

                                     0000  4200 ;

                                     0000  4300 ; LOCAL SYMBOLS

                                     0000  4400 ;

                                     0000  4500 ; ARGUMENT LIST OFFSET DEFINITIONS FOR CREATE MAILBOX

                                     0000  4600 ;

                                     0000  4700  

                           00000004  0000  4800 PRMFLG=4				;MAILBOX CREATION TYPE INDICATOR

                           00000008  0000  4900 CRCHAN=8				;ADDRESS TO STORE ASSIGNED CHANNEL NUMBER

                           0000000C  0000  5000 MAXMSG=12				;MAXIMUM MAILBOX MESSAGE SIZE

                           00000010  0000  5100 BUFQUO=16				;MAXIMUM BYTES FOR MESSAGE BUFFERING

                           00000014  0000  5200 PROMSK=20				;PROTECTION MASK FOR CREATED MAILBOX

                           00000018  0000  5300 ACMODE=24				;ACCESS MODE

                           0000001C  0000  5400 LOGNAM=28				;ADDRESS OF LOGICAL NAME STRING DESCRIPTOR

                                     0000  5500  

                                     0000  5600 ;

                                     0000  5700 ; ARGUMENT LIST OFFSET DEFINITIONS FOR DELETE MAILBOX

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   2

01                                                                                                                               (1)



                                     0000  5800 ;

                                     0000  5900  

                           00000004  0000  6000 DLCHAN=4				;CHANNEL NUMBER OF SPECIFIED MAILBOX

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   3

01              CREATE MAILBOX                                                                                                   (1)



                                     0000  6200 	.SBTTL	CREATE MAILBOX

                                     0000  6300 ;+

                                     0000  6400 ; EXE$CREMBX - CREATE MAILBOX

                                     0000  6500 ;

                                     0000  6600 ; THIS SERVICE PROVIDES THE CAPABILITY TO CREATE A VIRTUAL MAILBOX DEVICE

                                     0000  6700 ; AND ASSIGN AN I/O CHANNEL TO IT.

                                     0000  6800 ;

                                     0000  6900 ; INPUTS:

                                     0000  7000 ;

                                     0000  7100 ;	PRMFLG(AP) = MAILBOX CREATION TYPE INDICATOR.

                                     0000  7200 ;		LOW BIT CLEAR INDICATES TEMPORARY MAILBOX.

                                     0000  7300 ;		LOW BIT SET INDICATES PERMANENT MAILBOX.

                                     0000  7400 ;	CRCHAN(AP) = ADDRESS TO STORE ASSIGNED CHANNEL NUMBER.

                                     0000  7500 ;	MAXMSG(AP) = MAXIMUM MAILBOX MESSAGE SIZE.

                                     0000  7600 ;	BUFQUO(AP) = MAXIMUM BYTES FOR MESSAGE BUFFERING.

                                     0000  7700 ;	PROMSK(AP) = PROTECTION MASK FOR CREATED MAILBOX.

                                     0000  7800 ;	ACMODE(AP) = ACCESS MODE CHANNEL IS TO BE ASSIGNED TO.

                                     0000  7900 ;	LOGNAM(AP) = ADDRESS OF LOGICAL NAME STRING DESCRIPTOR.

                                     0000  8000 ;

                                     0000  8100 ;	R4 = CURRENT PROCESS PCB ADDRESS.

                                     0000  8200 ;

                                     0000  8300 ; OUTPUTS:

                                     0000  8400 ;

                                     0000  8500 ;	R0 LOW BIT CLEAR INDICATES FAILURE TO CREATE MAILBOX.

                                     0000  8600 ;

                                     0000  8700 ;		R0 = SS$_ACCVIO - LOGICAL NAME STRING OR LOGICAL NAME STRING

                                     0000  8800 ;			DESCRIPTOR CANNOT BE READ BY CALLING ACCESS MODE,

                                     0000  8900 ;			OR CHANNEL NUMBER CANNOT BE WRITTEN BY CALLING

                                     0000  9000 ;			ACCESS MODE.

                                     0000  9100 ;

                                     0000  9200 ;		R0 = SS$_EXQUOTA - PROCESS HAS INSUFFICIENT BUFFER QUOTA TO

                                     0000  9300 ;			ALLOCATE MAILBOX UCB OR SATISFY BUFFER REQUIREMENTS.

                                     0000  9400 ;

                                     0000  9500 ;		R0 = SS$_INSFMEM - SUFFICIENT SYSTEM DYNAMIC MEMORY DOES NOT

                                     0000  9600 ;			EXIST TO ALLOCATE MAILBOX UCB.

                                     0000  9700 ;

                                     0000  9800 ;		R0 = SS$_IVLOGNAM - GREATER THAN MAXIMUM LENGTH LOGICAL

                                     0000  9900 ;			NAME STRING SPECIFIED.

                                     0000 10000 ;

                                     0000 10100 ;		R0 = SS$_NOIOCHAN - NO I/O CHANNEL IS AVAILABLE FOR ASSIGNMENT.

                                     0000 10200 ;

                                     0000 10300 ;		R0 = SS$_NOPRIV - PROCESS DOES NOT HAVE PRIVILEGE TO CREATE

                                     0000 10400 ;			SPECIFIED TYPE OF MAILBOX.

                                     0000 10500 ;

                                     0000 10600 ;	R0 LOW BIT SET INDICATES SUCCESSFUL COMPLETION.

                                     0000 10700 ;

                                     0000 10800 ;		R0 = SS$_NORMAL - NORMAL COMPLETION., IF LOGICAL NAME SPECIFIED,

                                     0000 10900 ;			NEW ENTRY DID NOT SUPERSEDE PREVIOUS ENTRY.

                                     0000 11000 ;

                                     0000 11100 ;		R0 = SS$_SUPERSEDE - NORMAL COMPLETION, NEW ENTRY SUPERSEDED

                                     0000 11200 ;			PREVIOUS ENTRY IN SPECIFIED LOGICAL NAME TABLE.

                                     0000 11300 ;-

                                     0000 11400  

                                 00000000 11500 	.PSECT	Y$EXEPAGED

                               0FFC' 0000 11600 	.ENTRY	EXE$CREMBX,^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>

            55   00000000'EF     9E  0002 11700 	MOVAB	L^MB$UCB0,R5		;GET ADDRESS OF PROTOTYPE MAILBOX UCB

            50            00'    3C  0009 11800 	MOVZWL	S^#SS$_ACCVIO,R0	;ASSUME ACCESS VIOLATION

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   4

01              CREATE MAILBOX                                                                                                   (1)



            56         08 AC     D0  000C 11900 	MOVL	CRCHAN(AP),R6		;GET ADDRESS TO STORE CHANNEL NUMBER

                                     0010 12000 	IFNOWRT	#2,(R6),60$		;CAN CHANNEL NUMBER BE WRITTEN?

                          66     B4  0016 12100 	CLRW	(R6)			;CLEAR CHANNEL NUMBER IN CASE OF ERROR

            57         1C AC     D0  0018 12200 	MOVL	LOGNAM(AP),R7		;GET ADDRESS OF LOGICAL NAME STRING DESCRIPTOR

                          1F     13  001C 12300 	BEQL	10$			;IF EQL NO LOGICAL NAME SPECIFIED

                                     001E 12400 	IFNORD	#8,(R7),60$		;CAN LOGICAL NAME STRING DESCRIPTOR BE READ?

            58         04 A7     D0  0024 12500 	MOVL	4(R7),R8		;GET ADDRESS OF LOGICAL NAME STRING

            57            67     3C  0028 12600 	MOVZWL	(R7),R7			;GET LENGTH OF STRING IN BYTES

                          10     13  002B 12700 	BEQL	10$			;IF EQL STRING HAS ZERO LENGTH

                                     002D 12800 	IFNORD	R7,(R8),60$		;CAN ENTIRE LOGICAL NAME STRING BE READ?

            50       0000'8F     3C  0033 12900 	MOVZWL	#SS$_IVLOGNAM,R0	;ASSUME INVALID LOGICAL NAME

            3F            57     B1  0038 13000 	CMPW	R7,#LOG$C_NAMLENGTH-1	;LOGICAL NAME TOO LARGE?

                          38     1A  003B 13100 	BGTRU	60$			;IF GTRU YES

            59         10 AC     3C  003D 13200 10$:	MOVZWL	BUFQUO(AP),R9		;GET SPECIFIED BUFFER QUOTA

                          07     12  0041 13300 	BNEQ	20$			;IF NEQ BUFFER QUOTA SPECIFIED

            59   00000000'EF     3C  0043 13400 	MOVZWL	L^IOC$GW_MBXBFQUO,R9	;GET DEFAULT BUFFER QUOTA

            5A         04 AC     D0  004A 13500 20$:	MOVL	PRMFLG(AP),R10		;GET CREATION TYPE INDICATOR

            50       0000'8F     3C  004E 13600 	MOVZWL	#SS$_NOPRIV,R0		;ASSUME PROCESS DOES NOT HAVE PRIVILEGE

                                     0053 13700 	IFPRIV	PRMMBX,30$		;CAN PROCESS CREATE PERMANENT MAILBOX?

            1A            5A     E8  0058 13800 	BLBS	R10,60$			;IF LBS PRIVILEGE VIOLATION

                                     005B 13900 	IFNPRIV	TMPMBX,60$		;CAN PROCESS CREATE TEMPORARY MAILBOX?

                                     0060 14000  

                                     0060 14100 ;

                                     0060 14200 ; SEARCH FOR FREE CHANNEL

                                     0060 14300 ;

                                     0060 14400  

                          FF9D'  30  0060 14500 30$:	BSBW	IOC$FFCHAN		;FIND FREE I/O CHANNEL

            13            50     E8  0063 14600 	BLBS	R0,70$			;IF LBS FREE I/O CHANNEL FOUND

                          0D     11  0066 14700 	BRB	60$			;

                          50   8ED0  0068 14800 40$:	POPL	R0			;RETRIEVE ADDRESS OF LOGICAL NAME BLOCK

                          03     13  006B 14900 	BEQL	50$			;IF EQL NONE ALLOCATED

                          FF90'  30  006D 15000 	BSBW	EXE$DEAPAGED		;DEALLOCATE PAGED MEMORY

            50       0000'8F     3C  0070 15100 50$:	MOVZWL	#SS$_INSFMEM,R0		;SET INSUFFICIENT MEMORY

                                     0075 15200 60$:	SETIPL	#0			;ALLOW ALL INTERRUPTS

                                 04  0078 15300 	RET				;

                                     0079 15400  

                                     0079 15500 ;

                                     0079 15600 ; FREE CHANNEL FOUND

                                     0079 15700 ;

                                     0079 15800  

                          51     DD  0079 15900 70$:	PUSHL	R1			;SAVE I/O CHANNEL INDEX

                          56     DD  007B 16000 	PUSHL	R6			;SAVE ADDRESS TO STORE CHANNEL NUMBER

                                     007D 16100  

                                     007D 16200 ;

                                     007D 16300 ; COMPUTE QUOTA AND CHECK IF TEMPORARY MAILBOX

                                     007D 16400 ;

                                     007D 16500  

                                     007D 16600 	SETIPL	#IPL$_ASTDEL		;RAISE IPL TO AST DELIVERY LEVEL

            1A            5A     E8  0080 16700 	BLBS	R10,90$			;IF LBS PERMANENT MAILBOX

            50       0000'8F     3C  0083 16800 	MOVZWL	#SS$_EXQUOTA,R0		;ASSUME QUOTA EXCEEDED

            59         08 A5     A1  0088 16900 	ADDW3	UCB$W_SIZE(R5),R9,R11	;ADD MAILBOX SIZE AND BUFFER REQUIREMENTS

                          5B         008C       

                          E6     1F  008D 17000 	BCS	60$			;IF CS BYTE COUNT OVERFLOW

            5B       0100 8F     A1  008F 17100 	ADDW3	#256,R11,R1		;ADD IN BIAS *******TEMP*******

                          51         0094       

                          DE     1F  0095 17200 	BCS	60$			;IF CS BYTE COUNT OVERFLOW

         42 A4            51     B1  0097 17300 	CMPW	R1,PCB$W_BYTCNT(R4)	;ENOUGH BYTES TO SATISFY REQUIREMENTS?

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   5

01              CREATE MAILBOX                                                                                                   (1)



                          D8     1A  009B 17400 	BGTRU	60$			;IF GTRU NO

                                     009D 17500  

                                     009D 17600 ;

                                     009D 17700 ; ALLOCATE LOGICAL NAME BLOCK

                                     009D 17800 ;

                                     009D 17900  

                          57     DD  009D 18000 90$:	PUSHL	R7			;ANY LOGICAL NAME SPECIFIED?

                          12     13  009F 18100 	BEQL	100$			;IF EQL NO

            57            1F     C1  00A1 18200 	ADDL3	#LOG$C_LENGTH+11,R7,R1	;CALCULATE SIZE OF BLOCK REQUIRED

                          51         00A4       

                          FF58'  30  00A5 18300 	BSBW	EXE$ALOPAGED		;ALLOCATE PAGED MEMORY

            C5            50     E9  00A8 18400 	BLBC	R0,50$			;IF LBC ALLOCATION FAILURE

            6E            52     D0  00AB 18500 	MOVL	R2,(SP)			;SAVE ADDRESS OF LOGICAL NAME BLOCK

            57            1F     A1  00AE 18600 	ADDW3	#LOG$C_LENGTH+11,R7,LOG$W_SIZE(R2) ;SET SIZE OF ALLOCATED BLOCK

                       08 A2         00B1       

                                     00B3 18700  

                                     00B3 18800 ;

                                     00B3 18900 ; ALLOCATE MAILBOX UCB

                                     00B3 19000 ;

                                     00B3 19100  

                          FF4A'  30  00B3 19200 100$:	BSBW	IOC$CREATE_UCB		;CREATE MAILBOX UCB

            AF            50     E9  00B6 19300 	BLBC	R0,40$			;IF LBC ALLOCATION FAILURE

            56            52     D0  00B9 19400 	MOVL	R2,R6			;SAVE ADDRESS OF ALLOCATED UCB

         14 A6   00000000'EF     B0  00BC 19500 	MOVW	L^IOC$GW_MBXNMMSG,UCB$W_MSGMAX(R6) ;SET NUMBER OF MESSAGES ALLOWED

         18 A6            59     B0  00C4 19600 	MOVW	R9,UCB$W_BUFQUO(R6)	;SET BUFFER QUOTA

         1A A6         14 AC     B0  00C8 19700 	MOVW	PROMSK(AP),UCB$W_VPROT(R6) ;SET PROTECTION MASK

                       28 A6     D4  00CD 19800 	CLRL	UCB$L_PID(R6)		;CLEAR OWNER PID

         3A A6         0C AC     B0  00D0 19900 	MOVW	MAXMSG(AP),UCB$W_DEVBUFSIZ(R6) ;SET MAXIMUM MESSAGE SIZE

                          08     12  00D5 20000 	BNEQ	110$			;IF NEQ MESSAGE SIZE SPECIFIED

         3A A6   00000000'EF     B0  00D7 20100 	MOVW	L^IOC$GW_MBXMXMSG,UCB$W_DEVBUFSIZ(R6) ;SET DEFAULT MAXIMUM SIZE

                       3C A6     D4  00DF 20200 110$:	CLRL	UCB$L_DEVDEPEND(R6)	;CLEAR DEVICE DEPENDENT CHARACTERISTICS

         4A A6            5B     B0  00E2 20300 	MOVW	R11,UCB$W_CHARGE(R6)	;INSERT BYTE COUNT QUOTA CHARGE

            05            5A     E9  00E6 20400 	BLBC	R10,120$		;IF LBC TEMPORARY MAILBOX

         5A A6            00     E3  00E9 20500 	BBCS	#UCB$V_PRMMBX,UCB$W_DEVSTS(R6),130$ ;SET PERMANENT MAILBOX

                          0C         00ED       

         5A A6            02     A8  00EE 20600 120$:	BISW	#UCB$M_DELMBX,UCB$W_DEVSTS(R6) ;MARK MAILBOX FOR DELETE

         68 A4            5B     A2  00F2 20700 	SUBW	R11,PCB$W_BYTLM(R4)	;REDUCE PROCESS BYTE COUNT LIMIT

         42 A4            5B     A2  00F6 20800 	SUBW	R11,PCB$W_BYTCNT(R4)	;REDUCE PROCESS BYTE COUNT QUOTA

                                     00FA 20900  

                                     00FA 21000 ;

                                     00FA 21100 ; FILL IN LOGICAL NAME BLOCK AND MOVE LOGICAL NAME

                                     00FA 21200 ;

                                     00FA 21300  

                          59   8ED0  00FA 21400 130$:	POPL	R9			;RETRIEVE ADDRESS OF LOGICAL NAME BLOCK

         64 A6            59     D0  00FD 21500 	MOVL	R9,UCB$L_LOGADR(R6)	;SET ADDRESS OF LOGICAL NAME BLOCK

                          2A     13  0101 21600 	BEQL	150$			;IF EQL NONE SPECIFIED

            52         0A A9     9E  0103 21700 	MOVAB	LOG$B_TYPE(R9),R2	;GET ADDRESS OF BLOCK TYPE

            82            0B     90  0107 21800 	MOVB	#DYN$C_LOG,(R2)+	;SET DATA STRUCTURE TYPE CODE

            82            00     90  010A 21900 	MOVB	#LOG$C_SYSTEM,(R2)+	;SET SYSTEM TABLE NUMBER

            04            5A     E8  010D 22000 	BLBS	R10,140$		;IF LBS SYSTEM TABLE

         FF A2            01     90  0110 22100 	MOVB	#LOG$C_GROUP,-1(R2)	;SET GROUP TABLE NUMBER

            82         22 A4     3C  0114 22200 140$:	MOVZWL	PCB$L_UIC+2(R4),(R2)+	;INSERT CREATOR GROUP

            82            56     D0  0118 22300 	MOVL	R6,(R2)+		;INSERT ADDRESS OF MAILBOX UCB

            82            57     90  011B 22400 	MOVB	R7,(R2)+		;INSERT LENGTH OF LOGICAL NAME

            5A            6247   9E  011E 22500 	MOVAB	(R2)[R7],R10		;GET ADDRESS OF EQUIVALENCE STRING

            68            57     28  0122 22600 	MOVC	R7,(R8),(R2)		;INSERT LOGICAL NAME STRING

                          62         0125       

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   6

01              CREATE MAILBOX                                                                                                   (1)



            54   00000000'EF     D0  0126 22700 	MOVL	L^SCH$GL_CURPCB,R4	;RETRIEVE CURRENT PROCESS PCB ADDRESS

                                     012D 22800  

                                     012D 22900 ;

                                     012D 23000 ; CONSTRUCT MAILBOX LOGICAL NAME EQUIVALENCE STRING

                                     012D 23100 ;

                                     012D 23200  

            58            00'    3C  012D 23300 150$:	MOVZWL	S^#SS$_NORMAL,R8	;SET NORMAL COMPLETION

            55            59     D0  0130 23400 	MOVL	R9,R5			;LOGICAL NAME SPECIFIED?

                          13     13  0133 23500 	BEQL	160$			;IF EQL NO

            5A            01     C1  0135 23600 	ADDL3	#1,R10,R1		;CALCULATE ADDRESS OF OUTPUT BUFFER

                          51         0138       

            50            09     9A  0139 23700 	MOVZBL	#9,R0			;SET LENGTH OF OUTPUT BUFFER

                          FEC1'  30  013C 23800 	BSBW	IOC$CVT_DEVNAM		;CONVERT DEVICE NAME AND UNIT

            6A            51     90  013F 23900 	MOVB	R1,(R10)		;SET LENGTH OF CONVERTED DEVICE NAME

                          FEBB'  30  0142 24000 	BSBW	LOG$INSLOGN		;INSERT LOGICAL NAME BLOCK IN NAME TABLE

            58            50     D0  0145 24100 	MOVL	R0,R8			;SAVE INSERT COMPLETION STATUS

                                     0148 24200  

                                     0148 24300 ;

                                     0148 24400 ; ASSIGN CHANNEL

                                     0148 24500 ;

                                     0148 24600  

            5A            8E     7D  0148 24700 160$:	MOVQ	(SP)+,R10		;RETRIEVE CHANNEL INDEX AND USER ADDRESS

            6A            5B     AE  014B 24800 	MNEGW	R11,(R10)		;STORE CHANNEL NUMBER

            5B   00000000'EF     C0  014E 24850 	ADDL	CTL$GL_CCBBASE,R11	;COMPUTE BASE OF CHANNEL

            6B            56     D0  0155 24900 	MOVL	R6,CCB$L_UCB(R11)	;STORE UCB ADDRESS IN CCB

            02            00     EF  0158 25000 	EXTZV	#0,#2,ACMODE(AP),R0	;GET SPECIFIED ACCESS MODE

            50         18 AC         015B       

                          FE9F'  30  015E 25100 	BSBW	EXE$MAXACMODE		;MAXIMIZE ACCESS MODE

            50            01     81  0161 25200 	ADDB3	#1,R0,CCB$B_AMOD(R11)	;STORE ASSIGN ACCESS MODE

                       09 AB         0164       

            50            58     D0  0166 25300 	MOVL	R8,R0			;SET FINAL STATUS

                          FE94'  31  0169 25400 	BRW	IOC$UNLOCK		;UNLOCK I/O BATA BASE AND RETURN

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   7

01              DELETE MAILBOX                                                                                                   (1)



                                     016C 25600 	.SBTTL	DELETE MAILBOX

                                     016C 25700 ;+

                                     016C 25800 ; EXE$DELMBX - DELETE MAILBOX

                                     016C 25900 ;

                                     016C 26000 ; THIS SERVICE PROVIDES THE CAPABILITY TO MARK A PERMANENT MAILBOX FOR

                                     016C 26100 ; DELETION. ACTUAL DELETION OF THE MAILBOX OCCURS WHEN ITS REFERENCE COUNT

                                     016C 26200 ; REACHES ZERO.

                                     016C 26300 ;

                                     016C 26400 ; INPUTS:

                                     016C 26500 ;

                                     016C 26600 ;	DLCHAN(AP) = CHANNEL NUMBER THAT THE MAILBOX TO BE DELETED IS ASSIGNED TO.

                                     016C 26700 ;

                                     016C 26800 ;	R4 = CURRENT PROCESS PCB ADDRESS.

                                     016C 26900 ;

                                     016C 27000 ; OUTPUTS:

                                     016C 27100 ;

                                     016C 27200 ;	R0 LOW BIT CLEAR INDICATES FAILURE TO MARK MAILBOX FOR DELETE.

                                     016C 27300 ;

                                     016C 27400 ;		R0 = SS$_DEVNOTMBX - SPECIFIED CHANNEL IS NOT ASSIGNED TO A

                                     016C 27500 ;			MAILBOX.

                                     016C 27600 ;

                                     016C 27700 ;		R0 = SS$_IVCHAN - INVALID CHANNEL NUMBER SPECIFIED.

                                     016C 27800 ;

                                     016C 27900 ;		R0 = SS$_NOPRIV - PROCESS DOES NOT HAVE PRIVILEGE TO DELETE A

                                     016C 28000 ;			PERMANENT MAILBOX, SPECIFIED CHANNEL IS NOT ASSIGNED

                                     016C 28100 ;			TO A DEVICE, OR THE CALLER DOES NOT HAVE SUFFICIENT

                                     016C 28200 ;			PRIVILEGE TO ACCESS THE CHANNEL.

                                     016C 28300 ;

                                     016C 28400 ;	R0 LOW BIT SET INDICATES SUCCESSFUL COMPLETION.

                                     016C 28500 ;

                                     016C 28600 ;		R0 = SS$_NORMAL - NORMAL COMPLETION.

                                     016C 28700 ;-

                                     016C 28800  

                               003C' 016C 28900 	.ENTRY	EXE$DELMBX,^M<R2,R3,R4,R5>

            50         04 AC     3C  016E 29000 	MOVZWL	DLCHAN(AP),R0		;GET CHANNEL NUMBER OF MAILBOX

                          FE8B'  30  0172 29100 	BSBW	IOC$VERIFYCHAN		;VERIFY CHANNEL NUMBER

            25            50     E9  0175 29200 	BLBC	R0,20$			;IF LBC INVALID CHANNEL

            55            61     D0  0178 29300 	MOVL	CCB$L_UCB(R1),R5	;GET ASSIGNED DEVICE UCB ADDRESS

            50       0000'8F     3C  017B 29400 	MOVZWL	#SS$_DEVNOTMBX,R0	;SET DEVICE NOT MAILBOX STATUS

         34 A5            14     E1  0180 29500 	BBC	#DEV$V_MBX,UCB$L_DEVCHAR(R5),20$ ;IF CLR, DEVICE NOT MAILBOX

                          18         0184       

            50       0000'8F     3C  0185 29600 	MOVZWL	#SS$_NOPRIV,R0		;ASSUME CALLER DOES NOT HAVE PRIVILEGE

         5A A5            00     E1  018A 29700 	BBC	#UCB$V_PRMMBX,UCB$W_DEVSTS(R5),10$ ;IF CLR, NOT PERMANENT MAILBOX

                          09         018E       

                                     018F 29800 	IFNPRIV	PRMMBX,20$		;CALLER HAVE PRIVILEGE TO DELETE?

         5A A5            02     A8  0194 29900 	BISW	#UCB$M_DELMBX,UCB$W_DEVSTS(R5) ;MARK MAILBOX FOR DELETION

            50       0000'8F     3C  0198 30000 10$:	MOVZWL	#SS$_NORMAL,R0		;SET NORMAL COMPLETION

                                 04  019D 30100 20$:	RET				;

                                     019E 30200  

                                     019E 30300 	.END

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   8

SYMBOL TABLE                                                                                                                     (1)



ACMODE         = 00000018            DEV$M_SHR      = 00010000            DYN$C_PDB      = 00000021            

BIT...         = 00000000            DEV$M_SPL      = 00000040            DYN$C_PFL      = 00000023            

BUFQUO         = 00000010            DEV$M_SQD      = 00000020            DYN$C_PIB      = 00000022            

CCB$B_AMOD       00000009            DEV$M_SWL      = 02000000            DYN$C_PQB      = 0000000D            

CCB$B_STS        00000008            DEV$M_TRM      = 00000004            DYN$C_PTR      = 00000025            

CCB$C_LENGTH     00000010            DEV$M_WCK      = 80000000            DYN$C_RVT      = 0000000E            

CCB$K_LENGTH     00000010            DEV$V_ALL      = 00000017            DYN$C_SFT      = 00000024            

CCB$L_DIRP       0000000C            DEV$V_AVL      = 00000012            DYN$C_SSB      = 0000001D            

CCB$L_UCB        00000000            DEV$V_CCL      = 00000001            DYN$C_TQE      = 0000000F            

CCB$L_WIND       00000004            DEV$V_DIR      = 00000003            DYN$C_TYPAHD   = 00000014            

CCB$W_IOC        0000000A            DEV$V_DMT      = 00000015            DYN$C_UCB      = 00000010            

CRB$B_MASK       0000000E            DEV$V_ELG      = 00000016            DYN$C_VCB      = 00000011            

CRB$B_TT_ATTN    00000004            DEV$V_FOD      = 0000000E            DYN$C_WCB      = 00000012            

CRB$B_TT_EXPEC   00000005            DEV$V_FOR      = 00000018            EXE$ALOPAGED     ********   X   03   

CRB$B_TYPE       0000000A            DEV$V_GEN      = 00000011            EXE$CREMBX       00000000 RG    03   

CRB$C_LENGTH     00000028            DEV$V_IDV      = 0000001A            EXE$DEAPAGED     ********   X   03   

CRB$K_LENGTH     00000028            DEV$V_MBX      = 00000014            EXE$DELMBX       0000016C RG    03   

CRB$L_INTD       00000014            DEV$V_MNT      = 00000013            EXE$MAXACMODE    ********   X   03   

CRB$L_LINK       00000010            DEV$V_NET      = 0000000D            GBL...         = 00000000            

CRB$L_TT_DIAL    00000000            DEV$V_ODV      = 0000001B            IOC$CREATE_UCB   ********   X   03   

CRB$L_WQBL       00000004            DEV$V_RCK      = 0000001E            IOC$CVT_DEVNAM   ********   X   03   

CRB$L_WQFL       00000000            DEV$V_REC      = 00000000            IOC$FFCHAN       ********   X   03   

CRB$M_BSY      = 00000001            DEV$V_RND      = 0000001C            IOC$GW_MBXBFQUO  ********   X   03   

CRB$V_BSY      = 00000000            DEV$V_RTM      = 0000001D            IOC$GW_MBXMXMSG  ********   X   03   

CRB$W_REFC       0000000C            DEV$V_SDI      = 00000004            IOC$GW_MBXNMMSG  ********   X   03   

CRB$W_SIZE       00000008            DEV$V_SHR      = 00000010            IOC$UNLOCK       ********   X   03   

CRCHAN         = 00000008            DEV$V_SPL      = 00000006            IOC$VERIFYCHAN   ********   X   03   

CTL$GL_CCBBASE   ********   X   03   DEV$V_SQD      = 00000005            IPL$_ASTDEL    = 00000002            

DDB$B_ACPCLASS   00000013            DEV$V_SWL      = 00000019            IPL$_HWCLK     = 00000018            

DDB$B_TYPE       0000000A            DEV$V_TRM      = 00000002            IPL$_IOPOST    = 00000004            

DDB$C_LENGTH     00000014            DEV$V_WCK      = 0000001F            IPL$_MAILBOX   = 0000000B            

DDB$K_LENGTH     00000014            DLCHAN         = 00000004            IPL$_POWER     = 0000001F            

DDB$L_ACPD       00000010            DYN$C_ACB      = 00000002            IPL$_QUEUEAST  = 00000006            

DDB$L_DDT        0000000C            DYN$C_ADP      = 00000001            IPL$_SCHED     = 00000003            

DDB$L_LINK       00000000            DYN$C_AQB      = 00000003            IPL$_SYNCH     = 00000007            

DDB$L_UCB        00000004            DYN$C_BRDCST   = 0000001A            IPL$_TIMER     = 00000007            

DDB$T_NAME       00000014            DYN$C_BUFIO    = 00000013            LOG$B_AMOD       0000000E            

DDB$W_SIZE       00000008            DYN$C_CEB      = 00000004            LOG$B_TABLE      0000000B            

DEV$M_ALL      = 00800000            DYN$C_CIR      = 0000001E            LOG$B_TYPE       0000000A            

DEV$M_AVL      = 00040000            DYN$C_CRB      = 00000005            LOG$C_GROUP    = 00000001            

DEV$M_CCL      = 00000002            DYN$C_CXB      = 0000001B            LOG$C_LENGTH     00000014            

DEV$M_DIR      = 00000008            DYN$C_DDB      = 00000006            LOG$C_NAMLENGTH= 00000040            

DEV$M_DMT      = 00200000            DYN$C_FCB      = 00000007            LOG$C_PROCESS  = 00000002            

DEV$M_ELG      = 00400000            DYN$C_FRK      = 00000008            LOG$C_SYSTEM   = 00000000            

DEV$M_FOD      = 00004000            DYN$C_GSD      = 00000015            LOG$INSLOGN      ********   X   03   

DEV$M_FOR      = 01000000            DYN$C_IDB      = 00000009            LOG$K_LENGTH     00000014            

DEV$M_GEN      = 00020000            DYN$C_IRP      = 0000000A            LOG$L_LTBL       00000004            

DEV$M_IDV      = 04000000            DYN$C_JPB      = 0000001F            LOG$L_LTFL       00000000            

DEV$M_MBX      = 00100000            DYN$C_KFH      = 00000026            LOG$L_MBXUCB     00000010            

DEV$M_MNT      = 00080000            DYN$C_KFI      = 00000018            LOG$T_NAME       00000014            

DEV$M_NET      = 00002000            DYN$C_LOG      = 0000000B            LOG$W_GROUP      0000000C            

DEV$M_ODV      = 08000000            DYN$C_MTL      = 00000019            LOG$W_SIZE       00000008            

DEV$M_RCK      = 40000000            DYN$C_MVL      = 00000016            LOGNAM         = 0000001C            

DEV$M_REC      = 00000001            DYN$C_NDB      = 0000001C            MAXMSG         = 0000000C            

DEV$M_RND      = 10000000            DYN$C_NET      = 00000017            MB$UCB0          ********   X   03   

DEV$M_RTM      = 20000000            DYN$C_PBH      = 00000020            PCB$B_ASTACT     0000000C            

DEV$M_SDI      = 00000010            DYN$C_PCB      = 0000000C            PCB$B_ASTEN      0000000D            

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page   9

SYMBOL TABLE                                                                                                                     (1)



PCB$B_PRI        0000000B            PCB$W_MEM        00000020            PRV$V_EXQUOTA  = 00000013            

PCB$B_PRIB       00000033            PCB$W_MTXCNT     0000000E            PRV$V_GROUP    = 00000008            

PCB$B_TYPE       0000000A            PCB$W_PPGCNT     0000003A            PRV$V_GRPNAM   = 00000003            

PCB$B_WEFC       00000032            PCB$W_PRCCNT     0000006A            PRV$V_LOG_IO   = 00000007            

PCB$C_LENGTH     0000007C            PCB$W_SIZE       00000008            PRV$V_NETMBX   = 00000014            

PCB$K_LENGTH     0000007C            PCB$W_STATE      00000030            PRV$V_NOACNT   = 00000009            

PCB$L_ASTQBL     00000014            PCB$W_TMBU       00000036            PRV$V_OPER     = 00000012            

PCB$L_ASTQFL     00000010            PCB$W_TQCNT      0000004A            PRV$V_PHY_IO   = 00000016            

PCB$L_EFC2P      00000058            PR$_ACCR       = 00000029            PRV$V_PRMCEB   = 0000000A            

PCB$L_EFC3P      0000005C            PR$_ACCS       = 00000028            PRV$V_PRMGBL   = 00000018            

PCB$L_EFCS       00000050            PR$_ASTLVL     = 00000013            PRV$V_PRMMBX   = 0000000B            

PCB$L_EFCU       00000054            PR$_ESP        = 00000001            PRV$V_PSWAPM   = 0000000C            

PCB$L_EFWM       0000004C            PR$_ICCS       = 00000018            PRV$V_SETPRI   = 0000000D            

PCB$L_OWNER      0000001C            PR$_ICR        = 0000001A            PRV$V_SETPRV   = 0000000E            

PCB$L_PHD        00000064            PR$_IPL        = 00000012            PRV$V_SYSGBL   = 00000019            

PCB$L_PHYPCB     00000018            PR$_ISP        = 00000004            PRV$V_SYSNAM   = 00000002            

PCB$L_PID        00000060            PR$_KSP        = 00000000            PRV$V_TMPMBX   = 0000000F            

PCB$L_PQB        0000004C            PR$_MAPEN      = 00000038            PRV$V_VOLPRO   = 00000015            

PCB$L_SQBL       00000004            PR$_NICR       = 00000019            PRV$V_WORLD    = 00000010            

PCB$L_SQFL       00000000            PR$_P0BR       = 00000008            SCH$GL_CURPCB    ********   X   03   

PCB$L_STS        00000028            PR$_P0LR       = 00000009            SS$_ACCVIO       ********   X   03   

PCB$L_UIC        00000020            PR$_P1BR       = 0000000A            SS$_DEVNOTMBX    ********   X   03   

PCB$L_WSSWP      00000024            PR$_P1LR       = 0000000B            SS$_EXQUOTA      ********   X   03   

PCB$L_WTIME      0000002C            PR$_PCBB       = 00000010            SS$_INSFMEM      ********   X   03   

PCB$T_LNAME      0000006C            PR$_RXCS       = 00000020            SS$_IVLOGNAM     ********   X   03   

PCB$V_ASTPEN   = 00000011            PR$_RXDB       = 00000021            SS$_NOPRIV       ********   X   03   

PCB$V_BATCH    = 0000000E            PR$_SBIER      = 00000034            SS$_NORMAL       ********   X   03   

PCB$V_DELPEN   = 00000001            PR$_SBIFS      = 00000030            UCB$B_AMOD       00000053            

PCB$V_FORCPEN  = 00000002            PR$_SBIMT      = 00000033            UCB$B_CEX        00000077            

PCB$V_HIBER    = 00000013            PR$_SBIQC      = 00000036            UCB$B_CM1        0000004A            

PCB$V_INQUAN   = 00000003            PR$_SBIS       = 00000031            UCB$B_CM2        0000004B            

PCB$V_LOGIN    = 00000014            PR$_SBISC      = 00000032            UCB$B_DEVCLASS   00000038            

PCB$V_NOACNT   = 0000000F            PR$_SBITA      = 00000035            UCB$B_DEVTYPE    00000039            

PCB$V_PHDRES   = 00000012            PR$_SBR        = 0000000C            UCB$B_DIPL       00000052            

PCB$V_PSWAPM   = 00000004            PR$_SCBB       = 00000011            UCB$B_DX_SCTCNT  FFFFFFFE            

PCB$V_RES      = 00000000            PR$_SID        = 0000003E            UCB$B_DX_SPARE   FFFFFFFF            

PCB$V_RESPEN   = 00000005            PR$_SIRR       = 00000014            UCB$B_ERTCNT     00000070            

PCB$V_SSFEXC   = 00000006            PR$_SISR       = 00000015            UCB$B_ERTMAX     00000071            

PCB$V_SSFEXCE  = 00000007            PR$_SLR        = 0000000D            UCB$B_ESCAPE     0000004B            

PCB$V_SSFEXCS  = 00000008            PR$_SSP        = 00000002            UCB$B_FEX        00000076            

PCB$V_SSFEXCU  = 00000009            PR$_TBIA       = 00000039            UCB$B_FIPL       0000000B            

PCB$V_SSRWAIT  = 0000000A            PR$_TBIS       = 0000003A            UCB$B_LOCSRV     0000003C            

PCB$V_SUSPEN   = 0000000B            PR$_TODR       = 0000001B            UCB$B_OFFNDX     00000090            

PCB$V_SWPVBN   = 00000010            PR$_TXCS       = 00000022            UCB$B_OFFRTC     00000091            

PCB$V_WAKEPEN  = 0000000C            PR$_TXDB       = 00000023            UCB$B_REMSRV     0000003D            

PCB$V_WALL     = 0000000D            PR$_USP        = 00000003            UCB$B_SECTORS    0000003C            

PCB$W_APTCNT     00000034            PR$_WCSA       = 0000002C            UCB$B_SLAVE      00000074            

PCB$W_ASTCNT     0000003C            PR$_WCSD       = 0000002D            UCB$B_SPR        00000075            

PCB$W_BIOCNT     0000003E            PRMFLG         = 00000004            UCB$B_STATE      00000052            

PCB$W_BIOLM      00000040            PROMSK         = 00000014            UCB$B_TRACKS     0000003D            

PCB$W_BYTCNT     00000042            PRV$V_ALLSPOOL = 00000004            UCB$B_TYPE       0000000A            

PCB$W_BYTLM      00000068            PRV$V_BUGCHK   = 00000017            UCB$B_VERTSZ     0000003F            

PCB$W_DIOCNT     00000044            PRV$V_CMEXEC   = 00000001            UCB$C_LENGTH     00000074            

PCB$W_DIOLM      00000046            PRV$V_CMKRNL   = 00000000            UCB$C_LOGLNK   = 00000001            

PCB$W_FILCNT     00000048            PRV$V_DETACH   = 00000005            UCB$K_LENGTH     00000074            

PCB$W_GPGCNT     00000038            PRV$V_DEVCHAR  = 00000011            UCB$L_AMB        00000054            

PCB$W_GRP        00000022            PRV$V_DIAGNOSE = 00000006            UCB$L_ASTQBL     00000010            

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page  10

SYMBOL TABLE                                                                                                                     (1)



UCB$L_ASTQFL     0000000C            UCB$M_TIM      = 00000001            UCB$W_MB_SEED    FFFFFFFC            

UCB$L_CPID       0000005C            UCB$M_TIMOUT   = 00000040            UCB$W_MSGCNT     00000016            

UCB$L_CRB        00000020            UCB$M_TT_NOTIF = 00000004            UCB$W_MSGMAX     00000014            

UCB$L_DDB        00000024            UCB$M_TT_TIMO  = 00000002            UCB$W_NT_CHAN    0000007C            

UCB$L_DEVCHAR    00000034            UCB$M_VALID    = 00000800            UCB$W_OFFSET     00000086            

UCB$L_DEVDEPEND  0000003C            UCB$S_LNKPRI   = 00000002            UCB$W_REFC       00000050            

UCB$L_DPC        0000007C            UCB$S_LTYPE    = 00000002            UCB$W_SIZE       00000008            

UCB$L_DUETIM     0000005C            UCB$T_PARTNER    0000000C            UCB$W_SRCADDR    0000001A            

UCB$L_DX_BFPNT   FFFFFFF4            UCB$V_BACKP    = 00000005            UCB$W_STS        00000058            

UCB$L_DX_BUF     FFFFFFF0            UCB$V_BSY      = 00000008            UCB$W_UNIT       00000048            

UCB$L_DX_RXDB    FFFFFFF8            UCB$V_CANCEL   = 00000003            UCB$W_VPROT      0000001A            

UCB$L_EMB        00000078            UCB$V_DEADMO   = 0000000A            

UCB$L_FIRST      00000014            UCB$V_DELMBX   = 00000001            

UCB$L_FPC        0000000C            UCB$V_DIAGBUF  = 00000001            

UCB$L_FQBL       00000004            UCB$V_DX_WRITE = 00000003            

UCB$L_FQFL       00000000            UCB$V_ECC      = 00000000            

UCB$L_FR3        00000010            UCB$V_ERLOGIP  = 00000002            

UCB$L_FR4        00000014            UCB$V_INT      = 00000001            

UCB$L_IOQBL      00000044            UCB$V_INTTYPE  = 00000007            

UCB$L_IOQFL      00000040            UCB$V_JOB      = 00000000            

UCB$L_IRP        0000004C            UCB$V_LNKPRI   = 00000006            

UCB$L_LINK       0000002C            UCB$V_LTYPE    = 00000000            

UCB$L_LOGADR     00000064            UCB$V_MOUNTING = 00000009            

UCB$L_MAXBLOCK   00000080            UCB$V_MSGACK   = 00000004            

UCB$L_MEDIA      00000088            UCB$V_MSGFLO   = 00000003            

UCB$L_NT_DATSSB  00000074            UCB$V_NOCNVRT  = 00000002            

UCB$L_NT_INTSSB  00000078            UCB$V_NT_BFROVF= 00000002            

UCB$L_OPCNT      00000060            UCB$V_NT_BREAK = 00000005            

UCB$L_OWNUIC     0000001C            UCB$V_NT_NAME  = 00000004            

UCB$L_PID        00000028            UCB$V_NT_NONTR = 00000006            

UCB$L_RQBL       00000004            UCB$V_NT_SDP   = 00000003            

UCB$L_RQFL       00000000            UCB$V_ONLINE   = 00000004            

UCB$L_SVAPTE     00000068            UCB$V_POWER    = 00000005            

UCB$L_SVPN       00000064            UCB$V_PRMMBX   = 00000000            

UCB$L_TTCHAR     0000003C            UCB$V_SEGFLO   = 00000002            

UCB$L_VCB        00000030            UCB$V_TIM      = 00000000            

UCB$M_BSY      = 00000100            UCB$V_TIMOUT   = 00000006            

UCB$M_CANCEL   = 00000008            UCB$V_TT_NOTIF = 00000002            

UCB$M_DEADMO   = 00000400            UCB$V_TT_TIMO  = 00000001            

UCB$M_DELMBX   = 00000002            UCB$V_VALID    = 0000000B            

UCB$M_DIAGBUF  = 00000002            UCB$W_BCNT       0000006E            

UCB$M_DX_WRITE = 00000008            UCB$W_BCR        00000092            

UCB$M_ECC      = 00000001            UCB$W_BOFF       0000006C            

UCB$M_ERLOGIP  = 00000004            UCB$W_BUFQUO     00000018            

UCB$M_INT      = 00000002            UCB$W_BYTESTOGO  0000003E            

UCB$M_INTTYPE  = 00000080            UCB$W_CHARGE     0000004A            

UCB$M_JOB      = 00000001            UCB$W_CYLINDERS  0000003E            

UCB$M_MOUNTING = 00000200            UCB$W_DA         00000088            

UCB$M_NOCNVRT  = 00000004            UCB$W_DC         0000008A            

UCB$M_NT_BFROVF= 00000004            UCB$W_DEVBUFSIZ  0000003A            

UCB$M_NT_BREAK = 00000020            UCB$W_DEVSTS     0000005A            

UCB$M_NT_NAME  = 00000010            UCB$W_DSTADDR    00000018            

UCB$M_NT_NONTR = 00000040            UCB$W_DX_BCR     FFFFFFFC            

UCB$M_NT_SDP   = 00000008            UCB$W_EC1        0000008C            

UCB$M_ONLINE   = 00000010            UCB$W_EC2        0000008E            

UCB$M_POWER    = 00000020            UCB$W_ERRCNT     00000072            

UCB$M_PRMMBX   = 00000001            UCB$W_FUNC       00000084            

SYSMAILBX       - SYSTEM SERVICES TO CREATE AND DELETE MAILBOXE  21-AUG-1978 23:44:14   VAX-11 MACRO X0.3-11               Page  11

PROGRAM SECTION SYNOPSIS                                                                                                         (1)







PROGRAM SECTION SYNOPSIS



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

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

$ABS$            FFFFFFFF      02     NOPIC   USR   CON   ABS   LCL NOSHR   EXE   RD    WRT BYTE  

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





THERE WERE NO ERRORS OR WARNINGS.

12640. BYTES LEFT IN FREE MEMORY POOL.

2954. BYTES OF RECLAIMED MEMORY.

OBJ$:SYSMAILBX,LIS$:SYSMAILBX/-SP=LIB$:LIB/ML,SRC$:SYSMAILBX

8 MLB DIR RDS - 756 GETS TO DEFINE 25 MACROS. 54 INTER. FILE WRITES. 

