UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (2)      60  DECLARATIONS

   (2)     111  READ ONLY DATA

   (2)     146  READ WRITE DATA

   (3)     249  MAIN ROUTINE

   (4)     445  ERROR AND AST HANDLERS

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   1

1.17                                                                                                                             (1)



                                     0000     1 ;	UETP prefix file (contains macro library file specs).

                                     0000     2 ;

                                     0000     3 	.LIBRARY	/EXECML$/	;SYSTEM MACROS

                                     0000     4 	.LIBRARY	/LIBD$:[SYSTST.OBJ]SYSTST.MLB/ ; PRIVATE UETP,SYSTST LIB

                                     0000     5 	.LIST	MEB

                                     0000     6 ;

                                     0000     1 	.TITLE UETPDEV01  VAX/VMS UETP PERIPHERAL DEVICES TEST

                                     0000     2 	.IDENT /1.17/

                                     0000     3 

                                     0000     4 ;

                                     0000     5 ; COPYRIGHT (C) 1977,1978

                                     0000     6 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

                                     0000     7 ;

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

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

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

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

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

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

                                     0000    14 ; REMAIN IN DEC.

                                     0000    15 ;

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

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

                                     0000    18 ; CORPORATION.

                                     0000    19 ;

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

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

                                     0000    22 ;

                                     0000    23 

                                     0000    24 ;++

                                     0000    25 ; FACILITY:

                                     0000    26 ; 	THIS MODULE WILL BE DISTRIBUTED WITH VAX/VMS UNDER THE UETP UIC.

                                     0000    27 ;

                                     0000    28 ; ABSTRACT:

                                     0000    29 ;	THIS MODULE WILL CREATE A NUMBER OF DETACHED PROCESSES

                                     0000    30 ;	EACH OF WHICH WILL EXECUTE A DEVICE TEST USING RMS-32.

                                     0000    31 ;	EACH PROCESS WILL TEST ALL DEVICES ON A CONTROLLER.

                                     0000    32 ;

                                     0000    33 ; ENVIRONMENT:

                                     0000    34 ; 	THE MODULE WILL RUN IN USER ACCESS MODE, WITH INTERRUPTS ENABLED

                                     0000    35 ;

                                     0000    36 ; AUTHOR: DICK BATOR,	 CREATION DATE: NOVEMBER, 1977

                                     0000    37 ;

                                     0000    38 ; MODIFIED BY:

                                     0000    39 ;

                                     0000    40 ;

                                     0000    41 ;	, : VERSION

                                     0000    42 ; 1.1	- 24-JAN-78 RAB ADDED MACROS FOR EASY ADDITION OF NEW DEVICES

                                     0000    43 ; 1.10  - 31-JAN-78 RAB CHANGED LOGICAL NAMES TO UETP$xxxxx

                                     0000    44 ; 1.11  - 7-MAR-78 RAB  CHANGE $GTCHAN TO $GETCHN, UETP$DETACH='YES'

                                     0000    45 ; 1.12  - 8-MAR-78 RAB  REVISED SHARED ERROR AND STATUS MESSAGES

                                     0000    46 ; 1.13  -14-MAR-78 RAB  ADD STSFLG TO $CREPRC TO LOGIN DET PROC W/NOPASSWD

                                     0000    47 ; 1.14   20-MAR-78 RAB   FIX BUG IN TERMINATION MESSAGE CNTRLLR NAME

                                     0000    48 ; 1.15   23-MAR-78 RAB  FIX CREPRC TO INCLUDE QUOTALIST

                                     0000    49 ; 1.16   11-APR-78 RAB  DELAY RECV MAIL TILL ALL CREATES FINISHED TO AVOID

                                     0000    50 ;	PROBLEM WITH MESSAGE SIGNALING AT USER & AST LEVELS AT SAME TIME

                                     0000    51 ; 1.17   27-JUN-78 RAB    ADD MAGTAPE AS A KNOWN DEVICE

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   2

1.17                                                                                                                             (1)



                                     0000    52 ;--

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   3

1.17            DECLARATIONS                                                                                                     (2)



                                     0000    54 	.SBTTL	DECLARATIONS

                                     0000    55 ;

                                     0000    56 ; INCLUDE FILES:

                                     0000    57 ;

                                     0000    58 ;

                                     0000    59 ;

                                     0000    60 	$SHR_MESSAGES UET,116,<<BEGIND,3>,<ENDEDD,3>,<SYSERRORPC,2>,-

                                     0000    61 		<ABENDD,4>,<TEXT,3>,<BADWORD,2>,<BADLOGICPC,2>,-

                                     0000    62 		<BEGINT,INFO>,<ENDEDT,INFO>>

                                     0000       	.SAVE

                                 00000000       	.PSECT	$ABS$,ABS

                                     0000       	.RESTORE

                                     0000    63 ;

                                     0000    64 ; MACROS

                                     0000    65 ;

                                     0000    66 	.MACRO	DEVICE_NAME  NAME

                                     0000    67 ; 'NAME' IS THE SAME 4 LETTERS USED IN THE DEVICE TEST AND THE

                                     0000    68 ; .COM FILE WHICH INVOKES IT. E.G. ABCD => UETABCD00.COM  UETABCD00.EXE

                                     0000    69 NAME'_NAME: STRING I,<UET'NAME'00.COM> ;FILE TO CREATE DETACHED

                                     0000    70 	.ENDM

                                     0000    71 ;

                                     0000    72 	.MACRO	DEVICE_TEST  NAME,XX,?LBL

                                     0000    73 ; NAME IS THE SAME 'NAME' USED IN THE DEVICE_NAME MACRO.

                                     0000    74 ; XX IS THE CONTROLLER NAME (1 OR 2 LETTERS)

                                     0000    75 	.NCHR	$$$CHARS,<XX>

                                     0000    76 	$$$CHARS=$$$CHARS-1

                                     0000    77 	.IF EQ $$$CHARS

                                     0000    78 	CMPB	#^A/XX/,DEV_NAME

                                     0000    79 	.IFF

                                     0000    80 	CMPW	#^A/XX/,DEV_NAME

                                     0000    81 	.ENDC

                                     0000    82 	BNEQ	LBL

                                     0000    83 	MOVAL	NAME'_NAME,TEST_NAME

                                     0000    84 	BRW	RUN_TEST

                                     0000    85 LBL:

                                     0000    86 	.ENDM

                                     0000    87 ;

                                     0000    88 ;

                                     0000    89 ; EQUATED SYMBOLS:

                                     0000    90 ;

                           00000042  0000    91 CONTROLC=66			; EVENT FLAG NO. FOR CONTROL-C ENTERED

                           00000041  0000    92 PROC_COMP=65			; EVENT FLAG NO. FOR TEST COMPLETED

                           00000040  0000    93 PROC_STRT=64			; EVENT FLAG NO. FOR CLUSTER, PROC START

                           00000004  0000    94 CONTROLC_M=4			; MASK IN CLUSTER FOR CONTROL-C FLAG

                           00000002  0000    95 COMPLETE_M=2			; MASK IN CLUSTER FOR COMPLETION FLAG

                           00000001  0000    96 STARTED_M=1			; MASK IN CLUSTER FOR PROC STARTED

                           00000002  0000    97 CCBIT=2				; OFFSET IN CLUSTER FOR CONTROL-C FLAG

                           00000001  0000    98 CPBIT=1				; OFFSET IN CLUSTER FOR COMPLETION FLAG

                           00000000  0000    99 PSBIT=0				; OFFSET IN CLUSTER FOR PROC STARTED FLAG

                                     0000   100 ;

                           00000001  0000   101 SUCCESS=1			; UETPDEV01 NORMAL EXIT CODE

                           FFFFFFFF  0000   102 ERR_RET=-1

                           00000002  0000   103 BIT1 = 2

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   4

1.17            READ ONLY DATA                                                                                                   (2)



                                     0000   105 	.SBTTL READ ONLY DATA

                                 00000000   106 	.PSECT RODATA,NOEXE,RD,LONG,NOWRT

                                     0000   107 ;********************************************************************************

                                     0000   108 ;	READ/ONLY DATA AREA

                                     0000   109 ;********************************************************************************

                                     0000   110 CLUSTER2: STRING I,<CLUSTER2>			; EVENT FLAG CLUSTER NAME

                           00000008  0000       	.LONG	$$$CHARS

                           00000008' 0004       	.ADDRESS .+4

            32 52 45 54 53 55 4C 43  0008       	.ASCII	\CLUSTER2\

                           00000006  0010   111 COMMASK: .LONG	CONTROLC_M+COMPLETE_M

                                     0014   112 CNTRLCMSG: STRING I,<UETPDEV01 control-C entered, I/O tests terminating...>

                           00000035  0014       	.LONG	$$$CHARS

                           0000001C' 0018       	.ADDRESS .+4

6F 63 20 31 30 56 45 44 50 54 45 55  001C       	.ASCII	\UETPDEV01 control-C entered, I/O tests terminating...\

65 74 6E 65 20 43 2D 6C 6F 72 74 6E  0028       

73 65 74 20 4F 2F 49 20 2C 64 65 72  0034       

69 74 61 6E 69 6D 72 65 74 20 73 74  0040       

                     2E 2E 2E 67 6E  004C       

                                     0051   113 CTRLNAME: STRING I,<UETP$CTRLNAME>

                           0000000D  0051       	.LONG	$$$CHARS

                           00000059' 0055       	.ADDRESS .+4

4D 41 4E 4C 52 54 43 24 50 54 45 55  0059       	.ASCII	\UETP$CTRLNAME\

                                 45  0065       

                                     0066   114 ;

                        45 58 45 2E  0066   115 DEFAULT_NAM: .ASCII /.EXE/

                           00000004  006A   116 DEF_NAM_SIZ=.-DEFAULT_NAM

                                     006A   117 DETACH:	STRING I,<UETP$DETACH>		; LOGICAL NAME FOR DET PROC

                           0000000B  006A       	.LONG	$$$CHARS

                           00000072' 006E       	.ADDRESS .+4

   48 43 41 54 45 44 24 50 54 45 55  0072       	.ASCII	\UETP$DETACH\

                                     007D   118 	DEVICE_NAME DISK

                                     007D       DISK_NAME: STRING I,<UETDISK00.COM> ;FILE TO CREATE DETACHED

                           0000000D  007D       	.LONG	$$$CHARS

                           00000085' 0081       	.ADDRESS .+4

4F 43 2E 30 30 4B 53 49 44 54 45 55  0085       	.ASCII	\UETDISK00.COM\

                                 4D  0091       

                                     0092   119 ;

                           0000000D' 0092   120 	.LONG NAME_SIZE			; CONFIG FILE DESCRIP

                           0000009A' 0096   121 	.ADDRESS FILE_NAME

41 44 2E 56 45 44 49 4E 49 54 45 55  009A   122 FILE_NAME: .ASCII /UETINIDEV.DAT/

                                 54  00A6       

                           0000000D  00A7   123 NAME_SIZE=.-FILE_NAME

                                     00A7   124 ;

                                     00A7   125 ;

                                     00A7   126 	DEVICE_NAME PRIN

                                     00A7       PRIN_NAME: STRING I,<UETPRIN00.COM> ;FILE TO CREATE DETACHED

                           0000000D  00A7       	.LONG	$$$CHARS

                           000000AF' 00AB       	.ADDRESS .+4

4F 43 2E 30 30 4E 49 52 50 54 45 55  00AF       	.ASCII	\UETPRIN00.COM\

                                 4D  00BB       

                                     00BC   127 LOGIN:	STRING I,<SYS$SYSTEM:LOGINOUT.EXE>

                           00000017  00BC       	.LONG	$$$CHARS

                           000000C4' 00C0       	.ADDRESS .+4

4C 3A 4D 45 54 53 59 53 24 53 59 53  00C4       	.ASCII	\SYS$SYSTEM:LOGINOUT.EXE\

   45 58 45 2E 54 55 4F 4E 49 47 4F  00D0       

                                     00DB   128 ;

                                     00DB   129 MBLOGNAM: STRING I,<UETP$MAILBOX>	;NAME OF MAILBOX

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   5

1.17            READ ONLY DATA                                                                                                   (2)



                           0000000C  00DB       	.LONG	$$$CHARS

                           000000E3' 00DF       	.ADDRESS .+4

58 4F 42 4C 49 41 4D 24 50 54 45 55  00E3       	.ASCII	\UETP$MAILBOX\

                                     00EF   130 PROC_NAME: STRING I,<UETPDEV01>		;THIS PROCESS NAME

                           00000009  00EF       	.LONG	$$$CHARS

                           000000F7' 00F3       	.ADDRESS .+4

         31 30 56 45 44 50 54 45 55  00F7       	.ASCII	\UETPDEV01\

                                     0100   131 SUBOUT:	STRING I,<LOGP.LOG> 		;LOG FILE FOR THIS TEST

                           00000008  0100       	.LONG	$$$CHARS

                           00000108' 0104       	.ADDRESS .+4

            47 4F 4C 2E 50 47 4F 4C  0108       	.ASCII	\LOGP.LOG\

                                     0110   132 SUBOUTE: STRING I,<LOGX.LOG> 		;LOG ERROR FILE FOR THIS TEST

                           00000008  0110       	.LONG	$$$CHARS

                           00000118' 0114       	.ADDRESS .+4

            47 4F 4C 2E 58 47 4F 4C  0118       	.ASCII	\LOGX.LOG\

                                     0120   133 ;

                                     0120   134 TTNAME:	STRING I,<TT>

                           00000002  0120       	.LONG	$$$CHARS

                           00000128' 0124       	.ADDRESS .+4

                              54 54  0128       	.ASCII	\TT\

                                     012A   135 ;

                                     012A   136 	DEVICE_NAME TAPE		; NAME OF DEVICE TEST FOR MT

                                     012A       TAPE_NAME: STRING I,<UETTAPE00.COM> ;FILE TO CREATE DETACHED

                           0000000D  012A       	.LONG	$$$CHARS

                           00000132' 012E       	.ADDRESS .+4

4F 43 2E 30 30 45 50 41 54 54 45 55  0132       	.ASCII	\UETTAPE00.COM\

                                 4D  013E       

                                     013F   137 	DEVICE_NAME TTYS		; NAME OF DEVICE TEST FOR TERMINALS

                                     013F       TTYS_NAME: STRING I,<UETTTYS00.COM> ;FILE TO CREATE DETACHED

                           0000000D  013F       	.LONG	$$$CHARS

                           00000147' 0143       	.ADDRESS .+4

4F 43 2E 30 30 53 59 54 54 54 45 55  0147       	.ASCII	\UETTTYS00.COM\

                                 4D  0153       

                                     0154   138 YES:	STRING I,<YES>			;VALUE FOR 'UETP$DETACH'

                           00000003  0154       	.LONG	$$$CHARS

                           0000015C' 0158       	.ADDRESS .+4

                           53 45 59  015C       	.ASCII	\YES\

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   6

1.17            READ WRITE DATA                                                                                                  (2)



                                     015F   140 	.SBTTL READ WRITE DATA

                                 00000000   141 	.PSECT RWDATA,WRT,NOEXE,LONG

                                     0000   142 ;********************************************************************************

                                     0000   143 ;	READ/WRITE DATA AREA

                                     0000   144 ;********************************************************************************

                                     0000   145 ;

                                 00  0000   146 CCFLAG:	.BYTE	0			; CTRL-C HAS OCCURRED

                           00000000  0001   147 DIEARG:	.LONG	0			; APPROX DIE LOCATION

                                 00  0005   148 DEVTCNTR: .BYTE 0			; COUNTER OF DEVICE TESTS RUNNING

                                     0006   149 ;

                                 00  0006   150 EOF:	.BYTE	0			; 1 => EOF ON UETINIDEV.DAT

                                     0007   151 ;

                          0000'0004  0007   152 GETJPI_LIST: .WORD 4,JPI$_UIC		; LIST OF QUOTAS,ETC TO GET 

                           00000222' 000B   153 	.ADDRESS UIC

                           00000000' 000F   154 	.ADDRESS 0

                          0000'0004  0013   155 	.WORD	4,JPI$_ASTLM

                           0000017D' 0017   156 	.ADDRESS QL_ASTLM

                           00000000' 001B   157 	.ADDRESS 0

                          0000'0004  001F   158 	.WORD	4,JPI$_BIOLM

                           00000182' 0023   159 	.ADDRESS QL_BIOLM

                           00000000' 0027   160 	.ADDRESS 0

                          0000'0004  002B   161 	.WORD	4,JPI$_DIOLM

                           00000187' 002F   162 	.ADDRESS QL_DIOLM

                           00000000' 0033   163 	.ADDRESS 0

                          0000'0004  0037   164 	.WORD	4,JPI$_TQLM

                           0000018C' 003B   165 	.ADDRESS QL_TQELM

                           00000000' 003F   166 	.ADDRESS 0

                           00000000  0043   167 	.LONG	0			; END OF LIST

                                     0047   168 ;

                           00000078  0047   169 MBUFFERD:.LONG	120			; MAILBOX DESCRIPTOR

                           0000004F' 004B   170 	.ADDRESS .+4

                           00000051  004F   171 	.BLKW	1			; TYPE OF MESSAGE

                           00000053  0051   172 	.BLKW	1			; UNUSED

                           00000057  0053   173 	.BLKL	1			; STATUS

                           000000C7  0057   174 	.BLKB	112			; REST OF MESSAGE

                           00000000  00C7   175 MBXCHAN: .LONG	0

                           000000D3  00CB   176 MBXIOSB: .BLKQ	1

                           00000000  00D3   177 MBXUNIT: .LONG	0

                                     00D7   178 ;

                                     00D7   179 ;

                                     00D7   180 NAME_DES:				; DEVICE STRING DESCRIPTOR

                           00000003  00D7   181 	.LONG	3

                           000000DF' 00DB   182 	.ADDRESS DEV_NAME

                                     00DF   183 DEV_NAME:				; DEVICE NAME STRING

                           44 44 44  00DF   184 	.ASCII	/DDD/			; CONTROLLER NAME

                           000000E8  00E2   185 	.BLKB	6			; FILLER

                                     00E8   186 ;

                           00000000  00E8   187 OUTLEN:	.LONG	0			; FAO STORES ACTUAL OUT LEN HERE

                                     00EC   188 OUTDES:					; OUTPUT BUFFER DESCRIPTOR

                                     00EC   189 	STRING O,132			; 33 longwords 

                           00000084  00EC       	.LONG	132

                           000000F4' 00F0       	.ADDRESS .+4

                           00000178  00F4       	.BLKB	132

                                     0178   190 ;

                           00000000  0178   191 PIDADR:	.LONG	0			; INTERIM PROCESS ID AREA

                                     017C   192 ;

                                     017C   193 QLIST:					; QUOTA LIST FOR CREATE PROCESS

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   7

1.17            READ WRITE DATA                                                                                                  (2)



                                 00' 017C   194 	.BYTE	PQL$_ASTLM

                           00000000  017D   195 QL_ASTLM: .LONG	0

                                 00' 0181   196 	.BYTE	PQL$_BIOLM

                           00000000  0182   197 QL_BIOLM: .LONG	0

                                 00' 0186   198 	.BYTE	PQL$_DIOLM

                           00000000  0187   199 QL_DIOLM: .LONG	0

                                 00' 018B   200 	.BYTE	PQL$_TQELM

                           00000000  018C   201 QL_TQELM:  .LONG	0

                                 00' 0190   202 	.BYTE	PQL$_LISTEND

                                     0191   203 ;

                           00000000  0191   204 RDFLAGS:.LONG	0			; EVENT FLAGS AREA

                                     0195   205 RECORD_BUF:

                           00000219  0195   206 	.BLKB	132			; FILE RECORD BUFFER

                                 00  0219   207 TOTAL_TESTS: .BYTE 0			; TOTAL TESTS CREATED

                           00000000  021A   208 TTCHAN:	.LONG	0			; TERMINAL CHANNEL NO.

                                     021E   209 TEST_NAME:				; ADDR OF DEVICE TEST

                           00000000  021E   210 	.LONG	0

                           00000000  0222   211 UIC:	.LONG	0			; UIC FOR DETACHED PROCESS

                                     0226   212 ;

                           00000016' 0226   213 USRMSG:	.LONG	MSGSIZ			; STATUS MESSAGE FOR USER

                           0000022E' 022A   214 	.ADDRESS .+4

74 6E 6F 63 20 66 6F 20 74 73 65 74  022E   215 USRMSG2: .ASCII	/test of controller /

               20 72 65 6C 6C 6F 72  023A       

                           00000244  0241   216 USRMSG3: .BLKB	3

                           00000016  0244   217 	MSGSIZ=.-USRMSG2

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   8

1.17            READ WRITE DATA                                                                                                  (2)



                                     0244   219 ;********************************************************************************

                                     0244   220 ;	RMS FILE DEFINITIONS     

                                     0244   221 ;********************************************************************************

                                     0244   222 	.ALIGN	LONG

                                     0244   223 ;;FAB_CONF: $FAB	FAC=GET,FNA=FILE_NAME,FNS=NAME_SIZE,-

                                     0244   224 ;;		MRS=50,ORG=SEQ,RFM=VAR ; ALLOCATE A FILE ACCESS BLOCK

                                     0244   225 ;;RAB_CONF: $RAB	FAB=FAB_CONF,MBF=2,RAC=SEQ,UBF=RECORD_BUF,-

                                     0244   226 ;;		USZ=132,RSZ=48		; ALLOCATE A RECORD ACCESS BLOCK

                                     0244   227 ;;FAB_DEVT: $FAB	NAM=NAMBLK,DNA=DEFAULT_NAM,DNS=DEF_NAM_SIZ

                                     0244   228 ;;NAMBLK:	$NAM	ESA=OUTDES+8,ESS=120

                                     0360   237 	.LIST MEB

                                     0360   238 ;

                                     0360   239 CPRLIST:				; ARG LIST FOR $CREPRC SERVICE

                                     0360   240 	$creprc PIDADR,LOGIN,,SUBOUT,SUBOUTE,,QLIST,STSFLG=<^B01000000>

                           0000000C  0360       		.LONG	12

                           00000178' 0364       		.LONG	PIDADR

                           000000BC' 0368       		.LONG	LOGIN

                           00000000  036C       		.LONG	0

                           00000100' 0370       		.LONG	SUBOUT

                           00000110' 0374       		.LONG	SUBOUTE

                           00000000  0378       		.LONG	0

                           0000017C' 037C       		.LONG	QLIST

                           00000000  0380       		.LONG	0

                           00000002  0384       		.LONG	2

                           00000000  0388       		.LONG	0

                           00000000  038C       		.LONG	0

                           00000040  0390       		.LONG	^B01000000

                                     0394   241 ;

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page   9

1.17            MAIN ROUTINE                                                                                                     (3)



                                     0394   243 	.SBTTL	MAIN ROUTINE

                                 00000000   244 	.PSECT	UETPDEV01,EXE,RD,NOWRT

                               0000' 0000   245 	.ENTRY	UETPDEV01,0		; MAIN UETPDEV01 ENTRY ****

                           00000001  0002   246 	.MDELETE STRING

                           00000001  0002   247 	.MDELETE DEVICE_NAME

                                     0002   248 ;********************************************************************************

                                     0002   249 ;	GET CHANNELS ASSIGNED FOR DEVICES, CLEAR EVENT FLAGS, ETC.

                                     0002   250 ;********************************************************************************

                                     0002   251 	PUTMSG	<#UET$_BEGIND,#2,#PROC_NAME,#0> ; GREETINGS

                          00     DD  0002       	  	PUSHL	#0

                 000000EF'8F     DD  0004       	  	PUSHL	#PROC_NAME

                          02     DD  000A       	  	PUSHL	#2

                 0074103B 8F     DD  000C       	  	PUSHL	#UET$_BEGIND

   00000000'9F            04     FB  0012       		CALLS	#$$T1,@#LIB$SIGNAL

                                     0019   252 	$ASSIGN_S TTNAME,TTCHAN			; I/O CHAN FOR OPERATOR ABORT

                          7E     7C  0019       		CLRQ	-(SP)

                 0000021A'EF     3F  001B       		PUSHAW	TTCHAN

                 00000120'EF     7F  0021       		PUSHAQ	TTNAME

   00000000'GF            04     FB  0027       		CALLS	#4,G^SYS$ASSIGN

                                     002E   253 	SERVCHEK

            0B            50     E8  002E       30000$:	BLBS	R0,30001$

   00000001'EF         FA AF     DE  0031       	MOVAL	30000$,DIEARG

                          05A5   31  0039       	BRW	DIE

                                     003C       30001$:

                                     003C   254 	$SETPRN_S PROC_NAME			; SET PROCESS NAME

                 000000EF'EF     7F  003C       		PUSHAQ	PROC_NAME

   00000000'GF            01     FB  0042       		CALLS	#1,G^SYS$SETPRN

                                     0049   255 	SERVCHEK

            0B            50     E8  0049       30002$:	BLBS	R0,30003$

   00000001'EF         FA AF     DE  004C       	MOVAL	30002$,DIEARG

                          058A   31  0054       	BRW	DIE

                                     0057       30003$:

                                     0057   256 	$ASCEFC_S #PROC_STRT,CLUSTER2		; CLEAR EVENT FLAGS 64-95

                          00     DD  0057       		PUSHL	#0

                          00     DD  0059       		PUSHL	#0

                 00000000'EF     7F  005B       		PUSHAQ	CLUSTER2

                 00000040 8F     DD  0061       		PUSHL	#PROC_STRT

   00000000'GF            04     FB  0067       		CALLS	#4,G^SYS$ASCEFC

                                     006E   257 	SERVCHEK

            0B            50     E8  006E       30004$:	BLBS	R0,30005$

   00000001'EF         FA AF     DE  0071       	MOVAL	30004$,DIEARG

                          0565   31  0079       	BRW	DIE

                                     007C       30005$:

                                     007C   258 	$OPEN	FAB=FAB_CONF			; OPEN FILE UETINIDEV.DAT

                 00000244'EF     DF  007C       		PUSHAL	FAB_CONF

   00000000'9F            01     FB  0082       		CALLS	#$$.TMP1,@#SYS$OPEN

                                     0089   259 	SERVCHEK

            0B            50     E8  0089       30006$:	BLBS	R0,30007$

   00000001'EF         FA AF     DE  008C       	MOVAL	30006$,DIEARG

                          054A   31  0094       	BRW	DIE

                                     0097       30007$:

                                     0097   260 	$CONNECT RAB=RAB_CONF			; CONNECT THE FAB TO THE RAB

                 00000294'EF     DF  0097       		PUSHAL	RAB_CONF

   00000000'9F            01     FB  009D       		CALLS	#$$.TMP1,@#SYS$CONNECT

                                     00A4   261 	SERVCHEK

            0B            50     E8  00A4       30008$:	BLBS	R0,30009$

   00000001'EF         FA AF     DE  00A7       	MOVAL	30008$,DIEARG

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  10

1.17            MAIN ROUTINE                                                                                                     (3)



                          052F   31  00AF       	BRW	DIE

                                     00B2       30009$:

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  11

1.17            MAIN ROUTINE                                                                                                     (3)



                                     00B2   263 ;*********************************************************************************

                                     00B2   264 ;

                                     00B2   265 ;	NOW CREATE A MAILBOX TO RECEIVE TERMINATION MESSAGES

                                     00B2   266 ;	FROM EACH DETACHED PROCESS IN THE I/O TEST TO INDICATE

                                     00B2   267 ;	PROCESS COMPLETE.

                                     00B2   268 ;	WHEN THE MAILBOX RECEIVES A MSG, THE AST HANDLER FOR IT

                                     00B2   269 ;	WILL SET AN EVENT FLAG FOR THE MAIN ROUTINE. WHEN THE

                                     00B2   270 ;	MAIN ROUTINE IS FINISHED PROCESSING THE MESSAGE, IT WILL

                                     00B2   271 ;	QUEUE ANOTHER READ REQUEST FOR THE NEXT MSG.

                                     00B2   272 ;

                                     00B2   273 ;*********************************************************************************

                                     00B2   274 	$CREMBX_S #1,CHAN=MBXCHAN,MAXMSG=#120,BUFQUO=#720,PROMSK=#0,-

                                     00B2   275 		LOGNAM=MBLOGNAM		; MAILBOX FOR MSG BETWEEN PROCESSES

                 000000DB'EF     7F  00B2       		PUSHAQ	MBLOGNAM

                          7E     7C  00B8       		CLRQ	-(SP)

                 000002D0 8F     DD  00BA       		PUSHL	#720

                 00000078 8F     DD  00C0       		PUSHL	#120

                 000000C7'EF     3F  00C6       		PUSHAW	MBXCHAN

                          01     DD  00CC       		PUSHL	#1

   00000000'GF            07     FB  00CE       		CALLS	#7,G^SYS$CREMBX

                                     00D5   276 	SERVCHEK

            0B            50     E8  00D5       30010$:	BLBS	R0,30011$

   00000001'EF         FA AF     DE  00D8       	MOVAL	30010$,DIEARG

                          04FE   31  00E0       	BRW	DIE

                                     00E3       30011$:

                                     00E3   277 	$GETCHN_S CHAN=MBXCHAN,PRIBUF=MBUFFERD

                          00     DD  00E3       		PUSHL	#0

                          00     DD  00E5       		PUSHL	#0

                 00000047'EF     7F  00E7       		PUSHAQ	MBUFFERD

                          00     DD  00ED       		PUSHL	#0

            7E   000000C7'EF     3C  00EF       		MOVZWL	MBXCHAN,-(SP)

   00000000'GF            05     FB  00F6       		CALLS	#5,G^SYS$GETCHN

                                     00FD   278 	SERVCHEK

            0B            50     E8  00FD       30012$:	BLBS	R0,30013$

   00000001'EF         FA AF     DE  0100       	MOVAL	30012$,DIEARG

                          04D6   31  0108       	BRW	DIE

                                     010B       30013$:

   000000D3'EF   0000005B'EF     3C  010B   279 	MOVZWL	MBUFFERD+8+12,MBXUNIT	; MAILBOX UNIT NUMBER

                                     0116   280 ;********************************************************************************

                                     0116   281 ;	NOW ENABLE THE CONTROL-C INTERVENTION SO THAT USER MAY STOP THIS TEST

                                     0116   282 ;********************************************************************************

                                     0116   283 	$QIOW_S	CHAN=TTCHAN,FUNC=#IO$_SETMODE!IO$M_CTRLCAST,P1=CCASTHAND

                          7E     7C  0116       		CLRQ	-(SP)

                          7E     7C  0118       		CLRQ	-(SP)

                          00     DD  011A       		PUSHL	#0

                 0000060B'EF     DF  011C       		PUSHAL	CCASTHAND

                          7E     7C  0122       		CLRQ	-(SP)

                          00     DD  0124       		PUSHL	#0

            7E       0000'8F     3C  0126       		MOVZWL	#IO$_SETMODE!IO$M_CTRLCAST,-(SP)

            7E   0000021A'EF     3C  012B       		MOVZWL	TTCHAN,-(SP)

                          00     DD  0132       		PUSHL	#0

   00000000'GF            0C     FB  0134       		CALLS	#12,G^SYS$QIOW

                                     013B   284 	SERVCHEK

            0B            50     E8  013B       30014$:	BLBS	R0,30015$

   00000001'EF         FA AF     DE  013E       	MOVAL	30014$,DIEARG

                          0498   31  0146       	BRW	DIE

                                     0149       30015$:

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  12

1.17            MAIN ROUTINE                                                                                                     (3)



                                     0149   285 	PUTMSG	<#UETP$_ABORTC,#1,#PROC_NAME>

                 000000EF'8F     DD  0149       	  	PUSHL	#PROC_NAME

                          01     DD  014F       	  	PUSHL	#1

                 00000000'8F     DD  0151       	  	PUSHL	#UETP$_ABORTC

   00000000'9F            03     FB  0157       		CALLS	#$$T1,@#LIB$SIGNAL

                                     015E   286 	$GETJPI_S ITMLST=GETJPI_LIST	; GET OUR UIC, QUOTAS

                          7E     7C  015E       		CLRQ	-(SP)

                          00     DD  0160       		PUSHL	#0

                 00000007'EF     DF  0162       		PUSHAL	GETJPI_LIST

                          00     DD  0168       		PUSHL	#0

                          00     DD  016A       		PUSHL	#0

                          00     DD  016C       		PUSHL	#0

   00000000'GF            07     FB  016E       		CALLS	#7,G^SYS$GETJPI

                                     0175   287 	SERVCHEK

            0B            50     E8  0175       30016$:	BLBS	R0,30017$

   00000001'EF         FA AF     DE  0178       	MOVAL	30016$,DIEARG

                          045E   31  0180       	BRW	DIE

                                     0183       30017$:

                                     0183   288 	$CRELOG_S #1,DETACH,YES		;TELL CREATED PROC IT IS DETACHED

                          00     DD  0183       		PUSHL	#0

                 00000154'EF     7F  0185       		PUSHAQ	YES

                 0000006A'EF     7F  018B       		PUSHAQ	DETACH

                          01     DD  0191       		PUSHL	#1

   00000000'GF            04     FB  0193       		CALLS	#4,G^SYS$CRELOG

                                     019A   289 	SERVCHEK

            0B            50     E8  019A       30018$:	BLBS	R0,30019$

   00000001'EF         FA AF     DE  019D       	MOVAL	30018$,DIEARG

                          0439   31  01A5       	BRW	DIE

                                     01A8       30019$:

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  13

1.17            MAIN ROUTINE                                                                                                     (3)



                                     01A8   291 ;********************************************************************************

                                     01A8   292 ;

                                     01A8   293 ;	NOW LOOP CREATING AS MANY DETACHED PROCESSES AS NUMBER

                                     01A8   294 ;	OF DEVICE CONTROLLERS TO BE TESTED CONCURRENTLY.

                                     01A8   295 ;

                                     01A8   296 ;	THE PROCESS ID'S RETURNED FOR EACH NEW DETACHED PROCESS ARE KEPT

                                     01A8   297 ;	IN THE USER STACK UNTIL DELETION TIME, AT WHICH POINT THE PROCESS

                                     01A8   298 ;	ID'S ARE READ OFF THE STACK (LIFO) AND THAT PROCESS DELETED.

                                     01A8   299 ;

                                     01A8   300 ;********************************************************************************

                 00000005'EF     94  01A8   301 	CLRB	DEVTCNTR			;NBR OF TESTS RUNNING

                 00000006'EF     94  01AE   302 	CLRB	EOF				; END OF FILE ON UETINIDEV.DAT

   00000388'EF   00000222'EF     D0  01B4   303 	MOVL	UIC,CPRLIST+CREPRC$_UIC		; UIC OF TESTS

   0000038C'EF   000000D3'EF     D0  01BF   304 	MOVL	MBXUNIT,CPRLIST+CREPRC$_MBXUNT	; MAILBOX UNIT #

                                     01CA   305 READ:

                                     01CA   306 	$GET	RAB=RAB_CONF,ERR=RMS_ERR	; GET A RECORD

                 0000058F'EF     DF  01CA       		PUSHAL RMS_ERR

                 00000294'EF     DF  01D0       		PUSHAL	RAB_CONF

   00000000'9F            02     FB  01D6       		CALLS	#$$.TMP1,@#SYS$GET

            4F   00000006'EF     E9  01DD   307 	BLBC	EOF,10$				; IS IT EOF?

   00000219'EF   00000005'EF     90  01E4   308 	MOVB	DEVTCNTR,TOTAL_TESTS		; YES, SAVE # TESTS CREATED

                                     01EF   309 	$QIO_S  CHAN=MBXCHAN,FUNC=#IO$_READVBLK,IOSB=MBXIOSB,-

                                     01EF   310 		ASTADR=MBXAST,P1=MBUFFERD+8,P2=#120 ; SET UP TO RECV MAIL

                          7E     7C  01EF       		CLRQ	-(SP)

                          7E     7C  01F1       		CLRQ	-(SP)

                 00000078 8F     DD  01F3       		PUSHL	#120

                 0000004F'EF     DF  01F9       		PUSHAL	MBUFFERD+8

                          00     DD  01FF       		PUSHL	#0

                 00000651'EF     DF  0201       		PUSHAL	MBXAST

                 000000CB'EF     7F  0207       		PUSHAQ	MBXIOSB

            7E       0000'8F     3C  020D       		MOVZWL	#IO$_READVBLK,-(SP)

            7E   000000C7'EF     3C  0212       		MOVZWL	MBXCHAN,-(SP)

                          00     DD  0219       		PUSHL	#0

   00000000'GF            0C     FB  021B       		CALLS	#12,G^SYS$QIO

                                     0222   311 	SERVCHEK

            0B            50     E8  0222       30020$:	BLBS	R0,30021$

   00000001'EF         FA AF     DE  0225       	MOVAL	30020$,DIEARG

                          03B1   31  022D       	BRW	DIE

                                     0230       30021$:

                          01AE   31  0230   312 	BRW	WAIT_OR_DONE			; DONE CREATING

                                     0233   313 10$:						; NO

         44 8F   00000195'EF     91  0233   314 	CMPB	RECORD_BUF,#^A/D/		; IS THIS A DDB?

                          8D     12  023B   315 	BNEQ	READ				; BR IF NOT

   00000199'EF            02     93  023D   316 	BITB	#BIT1,RECORD_BUF+4		; OFF LINE?

                          84     12  0244   317 	BNEQ	READ				; YES

   000000DF'EF   0000019B'EF     D0  0246   318 	MOVL	RECORD_BUF+6,DEV_NAME		; CONTROLLER NAME

                                     0251   319 	DEVICE_TEST DISK,D			; IS CTRL NAME A DISK?

   000000DF'EF         44 8F     91  0251       	CMPB	#^A/D/,DEV_NAME

                          0E     12  0259       	BNEQ	30022$

   0000021E'EF   0000007D'EF     DE  025B       	MOVAL	DISK_NAME,TEST_NAME

                          004E   31  0266       	BRW	RUN_TEST

                                     0269       30022$:

                                     0269   320 	DEVICE_TEST TTYS,TT			; IS IT A TERMINAL CTRLR?

   000000DF'EF       5454 8F     B1  0269       	CMPW	#^A/TT/,DEV_NAME

                          0E     12  0272       	BNEQ	30023$

   0000021E'EF   0000013F'EF     DE  0274       	MOVAL	TTYS_NAME,TEST_NAME

                          0035   31  027F       	BRW	RUN_TEST

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  14

1.17            MAIN ROUTINE                                                                                                     (3)



                                     0282       30023$:

                                     0282   321 	DEVICE_TEST PRIN,LP			; IS IT A LINEPRINTER?

   000000DF'EF       504C 8F     B1  0282       	CMPW	#^A/LP/,DEV_NAME

                          0E     12  028B       	BNEQ	30024$

   0000021E'EF   000000A7'EF     DE  028D       	MOVAL	PRIN_NAME,TEST_NAME

                          001C   31  0298       	BRW	RUN_TEST

                                     029B       30024$:

                                     029B   322 	DEVICE_TEST TAPE,MT			; IS IT MAGTAPE?

   000000DF'EF       544D 8F     B1  029B       	CMPW	#^A/MT/,DEV_NAME

                          0E     12  02A4       	BNEQ	30025$

   0000021E'EF   0000012A'EF     DE  02A6       	MOVAL	TAPE_NAME,TEST_NAME

                          0003   31  02B1       	BRW	RUN_TEST

                                     02B4       30025$:

                          FF13   31  02B4   323 	BRW	READ				; UNKNOWN DEV, GET NEXT RECORD

                                     02B7   324 ;

                                     02B7   325 RUN_TEST:

   00000304'EF   0000021E'EF     D0  02B7   326 	MOVL	TEST_NAME,FAB_DEVT+FAB$L_FNA

   00000304'EF            08     C0  02C2   327 	ADDL2	#8,FAB_DEVT+FAB$L_FNA

   0000030C'EF            09     90  02C9   328 	MOVB	#9,FAB_DEVT+FAB$B_FNS

                                     02D0   329 	$PARSE	FAB=FAB_DEVT			; DOES TEST PROG.EXE EXIST

                 000002D8'EF     DF  02D0       		PUSHAL	FAB_DEVT

   00000000'9F            01     FB  02D6       		CALLS	#$$.TMP1,@#SYS$PARSE

            03            50     E8  02DD   330 	BLBS	R0,10$

                          FEE7   31  02E0   331 	BRW	READ

                                     02E3   332 10$:

                                     02E3   333 	$SEARCH	FAB=FAB_DEVT

                 000002D8'EF     DF  02E3       		PUSHAL	FAB_DEVT

   00000000'9F            01     FB  02E9       		CALLS	#$$.TMP1,@#SYS$SEARCH

            03            50     E8  02F0   334 	BLBS	R0,20$

                          FED4   31  02F3   335 	BRW	READ

                                     02F6   336 20$:

   0000036C'EF   0000021E'EF     D0  02F6   337 	MOVL	TEST_NAME,CPRLIST+CREPRC$_INPUT ; TEST NAME TO RUN

                                     0301   338 ;********************************************************************************

                                     0301   339 ;	CREATE LOGICAL NAME "CTRL_NAME" TO BE EQUIVALENT TO THE

                                     0301   340 ;	DEVICE CONTROLLER TO BE TESTED. THEN CREATE A PROCESS TO

                                     0301   341 ;	TEST THAT TYPE OF DEVICE. FLAG #64 INDICATES PROCESS HAS

                                     0301   342 ;	STARTED AND READ THE LOGICAL NAME, THUS RELEASING NAME FOR

                                     0301   343 ;	NEXT USE.

                                     0301   344 ;********************************************************************************

                                     0301   345 	$CRELOG_S #1,CTRLNAME,NAME_DES		;CONTROLLER TO TEST

                          00     DD  0301       		PUSHL	#0

                 000000D7'EF     7F  0303       		PUSHAQ	NAME_DES

                 00000051'EF     7F  0309       		PUSHAQ	CTRLNAME

                          01     DD  030F       		PUSHL	#1

   00000000'GF            04     FB  0311       		CALLS	#4,G^SYS$CRELOG

                                     0318   346 	SERVCHEK

            0B            50     E8  0318       30026$:	BLBS	R0,30027$

   00000001'EF         FA AF     DE  031B       	MOVAL	30026$,DIEARG

                          02BB   31  0323       	BRW	DIE

                                     0326       30027$:

                                     0326   347 	$CREPRC_G CPRLIST			; CREATE A NEW PROCESS..

   00000000'GF   00000360'EF     FA  0326       		CALLG	CPRLIST,G^SYS$CREPRC

                                     0331   348 	SERVCHEK

            0B            50     E8  0331       30028$:	BLBS	R0,30029$

   00000001'EF         FA AF     DE  0334       	MOVAL	30028$,DIEARG

                          02A2   31  033C       	BRW	DIE

                                     033F       30029$:

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  15

1.17            MAIN ROUTINE                                                                                                     (3)



                                     033F   349 30$:

                 00000005'EF     96  033F   350 	INCB	DEVTCNTR			; COUNT OF NBR OF TESTS

            7E   00000178'EF     D0  0345   351 	MOVL	PIDADR,-(SP)			; KEEP LIST OF PROCESSES ON STACK

                                     034C   352 	$WFLOR_S EFN=#PROC_STRT,MASK=#CONTROLC_M+STARTED_M 

                          05     DD  034C       		PUSHL	#CONTROLC_M+STARTED_M

                 00000040 8F     DD  034E       		PUSHL	#PROC_STRT

   00000000'GF            02     FB  0354       		CALLS	#2,G^SYS$WFLOR

                                     035B   353 	SERVCHEK

            0B            50     E8  035B       30030$:	BLBS	R0,30031$

   00000001'EF         FA AF     DE  035E       	MOVAL	30030$,DIEARG

                          0278   31  0366       	BRW	DIE

                                     0369       30031$:

                                     0369   354 	$READEF_S EFN=#PROC_STRT,STATE=RDFLAGS ; READ EVENT FLAGS

                 00000191'EF     DF  0369       		PUSHAL	RDFLAGS

                 00000040 8F     DD  036F       		PUSHL	#PROC_STRT

   00000000'GF            02     FB  0375       		CALLS	#2,G^SYS$READEF

                                     037C   355 	SERVCHEK

            0B            50     E8  037C       30032$:	BLBS	R0,30033$

   00000001'EF         FA AF     DE  037F       	MOVAL	30032$,DIEARG

                          0257   31  0387       	BRW	DIE

                                     038A       30033$:

   00000191'EF            00     E0  038A   356 	BBS	#PSBIT,RDFLAGS,NXTPROC		; BR IF PROC STARTED

                          0E         0391       

   00000191'EF            02     E0  0392   357 	BBS	#CCBIT,RDFLAGS,40$		; CTRL-C?

                          03         0399       

                          FFA2   31  039A   358 	BRW	30$				; JUST IN CASE GET HERE

                                     039D   359 40$:

                          0106   31  039D   360 	BRW	DELETE				; ctrl-C =>done

                                     03A0   361 ;

                                     03A0   362 NXTPROC:

                                     03A0   363 	$CLREF_S EFN=#PROC_STRT			; PROCESS STARTED OK

                 00000040 8F     DD  03A0       		PUSHL	#PROC_STRT

   00000000'GF            01     FB  03A6       		CALLS	#1,G^SYS$CLREF

                                     03AD   364 	SERVCHEK

            0B            50     E8  03AD       30034$:	BLBS	R0,30035$

   00000001'EF         FA AF     DE  03B0       	MOVAL	30034$,DIEARG

                          0226   31  03B8       	BRW	DIE

                                     03BB       30035$:

   000000DF'EF            03     28  03BB   365 	MOVC3	#3,DEV_NAME,USRMSG3		; MOVE CONTROLLER NAME

                 00000241'EF         03C2       

                                     03C7   366 	PUTMSG	<#UET$_BEGINT,#2,#USRMSG,#0>

                          00     DD  03C7       	  	PUSHL	#0

                 00000226'8F     DD  03C9       	  	PUSHL	#USRMSG

                          02     DD  03CF       	  	PUSHL	#2

                 00741043 8F     DD  03D1       	  	PUSHL	#UET$_BEGINT

   00000000'9F            04     FB  03D7       		CALLS	#$$T1,@#LIB$SIGNAL

                          FDE9   31  03DE   367 	BRW	READ				; CREATE MORE TESTS

                                     03E1   368 ;

                                     03E1   369 ;********************************************************************************

                                     03E1   370 ;	WAIT HERE FOR PROCESSES TO FINISH AND SEND MAIL

                                     03E1   371 ;	OR INTERRUPTION VIA CONTROL-C AT CONSOLE.

                                     03E1   372 ;********************************************************************************

                                     03E1   373 WAIT_OR_DONE:

                 00000005'EF     95  03E1   374 	TSTB	DEVTCNTR

                          03     14  03E7   375 	BGTR	10$				; MORE TO WAIT FOR?

                          0115   31  03E9   376 	BRW	CLEANUP				; NO

                                     03EC   377 ;

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  16

1.17            MAIN ROUTINE                                                                                                     (3)



                                     03EC   378 10$:

                                     03EC   379 	$WFLOR_S EFN=#PROC_STRT,MASK=COMMASK	; WAIT ON FLAGS

                 00000010'EF     DD  03EC       		PUSHL	COMMASK

                 00000040 8F     DD  03F2       		PUSHL	#PROC_STRT

   00000000'GF            02     FB  03F8       		CALLS	#2,G^SYS$WFLOR

                                     03FF   380 	SERVCHEK

            0B            50     E8  03FF       30036$:	BLBS	R0,30037$

   00000001'EF         FA AF     DE  0402       	MOVAL	30036$,DIEARG

                          01D4   31  040A       	BRW	DIE

                                     040D       30037$:

                                     040D   381 ;********************************************************************************

                                     040D   382 ;	SOME EVENT FLAG HAS BEEN SET; DETERMINE WHICH ONE AND TAKE

                                     040D   383 ;	APPROPRIATE ACTION: FOR CONTROL-C,

                                     040D   384 ;	EXPLICITLY DELETE ALL DETACHED PROCESSES CREATED EARLIER.

                                     040D   385 ;********************************************************************************

                                     040D   386 	$READEF_S EFN=#PROC_STRT,STATE=RDFLAGS 	; READ CURRENT EVENT FLAG SETTINGS

                 00000191'EF     DF  040D       		PUSHAL	RDFLAGS

                 00000040 8F     DD  0413       		PUSHL	#PROC_STRT

   00000000'GF            02     FB  0419       		CALLS	#2,G^SYS$READEF

                                     0420   387 	SERVCHEK

            0B            50     E8  0420       30038$:	BLBS	R0,30039$

   00000001'EF         FA AF     DE  0423       	MOVAL	30038$,DIEARG

                          01B3   31  042B       	BRW	DIE

                                     042E       30039$:

   00000191'EF            02     E0  042E   388 	BBS	#CCBIT,RDFLAGS,DELETE		; IF CONTRL-C, DROP TO DELETE PROCS.

                          70         0435       

   00000191'EF            01     E0  0436   389 	BBS	#CPBIT,RDFLAGS,20$		; PROCESS COMPLETE?

                          03         043D       

                          FFAB   31  043E   390 	BRW	10$

                                     0441   391 20$:

                 00000005'EF     97  0441   392 	DECB	DEVTCNTR			; ONE LESS TEST RUNNING

                                     0447   393 	$CLREF_S #PROC_COMP			; CLEAR FLAG INDICATING A TEST COMPLETED

                 00000041 8F     DD  0447       		PUSHL	#PROC_COMP

   00000000'GF            01     FB  044D       		CALLS	#1,G^SYS$CLREF

                                     0454   394 	SERVCHEK

            0B            50     E8  0454       30040$:	BLBS	R0,30041$

   00000001'EF         FA AF     DE  0457       	MOVAL	30040$,DIEARG

                          017F   31  045F       	BRW	DIE

                                     0462       30041$:

                                     0462   395 	$QIO_S  CHAN=MBXCHAN,FUNC=#IO$_READVBLK,IOSB=MBXIOSB,-

                                     0462   396 		ASTADR=MBXAST,P1=MBUFFERD+8,P2=#120 ; SET UP TO RECV MAIL

                          7E     7C  0462       		CLRQ	-(SP)

                          7E     7C  0464       		CLRQ	-(SP)

                 00000078 8F     DD  0466       		PUSHL	#120

                 0000004F'EF     DF  046C       		PUSHAL	MBUFFERD+8

                          00     DD  0472       		PUSHL	#0

                 00000651'EF     DF  0474       		PUSHAL	MBXAST

                 000000CB'EF     7F  047A       		PUSHAQ	MBXIOSB

            7E       0000'8F     3C  0480       		MOVZWL	#IO$_READVBLK,-(SP)

            7E   000000C7'EF     3C  0485       		MOVZWL	MBXCHAN,-(SP)

                          00     DD  048C       		PUSHL	#0

   00000000'GF            0C     FB  048E       		CALLS	#12,G^SYS$QIO

                                     0495   397 	SERVCHEK

            0B            50     E8  0495       30042$:	BLBS	R0,30043$

   00000001'EF         FA AF     DE  0498       	MOVAL	30042$,DIEARG

                          013E   31  04A0       	BRW	DIE

                                     04A3       30043$:

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  17

1.17            MAIN ROUTINE                                                                                                     (3)



                          FF3B   31  04A3   398 	BRW	WAIT_OR_DONE

                                     04A6   399 ;*********************************************************************

                                     04A6   400 ;  OPERATOR ABORTED TEST. LET'S KILL EVERYBODY.

                                     04A6   401 ;*********************************************************************

                                     04A6   402 DELETE:

   00000219'EF            01     82  04A6   403 	SUBB2	#1,TOTAL_TESTS			; ANY PROCESSES CREATED?

                          17     18  04AD   404 	BGEQ	10$				; YES, FORCE THEM TO XIT

                                     04AF   405 	$CLREF_S EFN=#CONTROLC			; ONCE IS ENOUGH

                 00000042 8F     DD  04AF       		PUSHL	#CONTROLC

   00000000'GF            01     FB  04B5       		CALLS	#1,G^SYS$CLREF

   00000000'EF            02     88  04BC   406 	BISB2	#BIT1,CCFLAG

                          FF1B   31  04C3   407 	BRW	WAIT_OR_DONE			; BR IF ANY TESTS RUNNING

                                     04C6   408 10$:

   00000178'EF            8E     D0  04C6   409 	MOVL	(SP)+,PIDADR			; GET ID OF LAST PROCESS STARTED

                          27     13  04CD   410 	BEQL	20$				; ERROR IF 0

                                     04CF   411 	$FORCEX_S PIDADR,,#^X10000001		; AND FORCE PROCESS EXIT

                 10000001 8F     DD  04CF       		PUSHL	#^X10000001

                          00     DD  04D5       		PUSHL	#0

                 00000178'EF     DF  04D7       		PUSHAL	PIDADR

   00000000'GF            03     FB  04DD       		CALLS	#3,G^SYS$FORCEX

   00000000'8F            50     D1  04E4   412 	CMPL	R0,#SS$_NORMAL			; DELETE OK?

                          B9     13  04EB   413 	BEQL	DELETE				; YES

   00000000'8F            50     D1  04ED   414 	CMPL	R0,#SS$_NONEXPR			; NO,  PROC COMPLETED EARLIER?

                          B0     13  04F4   415 	BEQL	DELETE				; YES

                                     04F6   416 20$:

   00000001'EF         FE AF     DE  04F6   417 	MOVAL	.,DIEARG			; SAVE APPROX. ERR ADDR

                          00E0   31  04FE   418 	BRW	DIE				; NO,  MUST BE ERROR

                                     0501   419 ;********************************************************************************

                                     0501   420 ;	ALL DETACHED PROCESSES HAVE BEEN FINISHED PROCESSING (OR HAVE

                                     0501   421 ;	BEEN FORCED TO EXIT); NOW PERFORM PROGRAM CLEANUP.

                                     0501   422 ;********************************************************************************

                                     0501   423 CLEANUP:

            52            01     9A  0501   424 	MOVZBL	#SUCCESS,R2		; NORMAL EXIT ENTRY

                                     0504   425 CLEANERR:				; ERROR EXIT ENTRY

                                     0504   426 	$DELLOG_S #1,DETACH		; DELETE LOGICAL NAMES FROM GROUP TBL

                          00     DD  0504       		PUSHL	#0

                 0000006A'EF     7F  0506       		PUSHAQ	DETACH

                          01     DD  050C       		PUSHL	#1

   00000000'GF            03     FB  050E       		CALLS	#3,G^SYS$DELLOG

                                     0515   427 	$DELLOG_S #1,CTRLNAME

                          00     DD  0515       		PUSHL	#0

                 00000051'EF     7F  0517       		PUSHAQ	CTRLNAME

                          01     DD  051D       		PUSHL	#1

   00000000'GF            03     FB  051F       		CALLS	#3,G^SYS$DELLOG

                                     0526   428 	$DELMBX_S MBXCHAN		; DELETE UNNEEDED MAILBOX

            7E   000000C7'EF     3C  0526       		MOVZWL	MBXCHAN,-(SP)

   00000000'GF            01     FB  052D       		CALLS	#1,G^SYS$DELMBX

                                     0534   429 	$DACEFC_S #PROC_STRT		; DISASSOC COM FLAG CLUSTR

                 00000040 8F     DD  0534       		PUSHL	#PROC_STRT

   00000000'GF            01     FB  053A       		CALLS	#1,G^SYS$DACEFC

                                     0541   430 	$DASSGN_S TTCHAN		; DE-ASSIGN TERMINAL CHANNEL

            7E   0000021A'EF     3C  0541       		MOVZWL	TTCHAN,-(SP)

   00000000'GF            01     FB  0548       		CALLS	#1,G^SYS$DASSGN

            52            01     D1  054F   431 	CMPL	#SUCCESS,R2		; DO WE GIVE GOOD OR BAD END MSG

                          03     13  0552   432 	BEQL	10$

                          0020   31  0554   433 	BRW	FATAL			; BAD

                                     0557   434 10$:

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  18

1.17            MAIN ROUTINE                                                                                                     (3)



                                     0557   435 	PUTMSG	<#UET$_ENDEDD,#2,#PROC_NAME,#0>

                          00     DD  0557       	  	PUSHL	#0

                 000000EF'8F     DD  0559       	  	PUSHL	#PROC_NAME

                          02     DD  055F       	  	PUSHL	#2

                 00741083 8F     DD  0561       	  	PUSHL	#UET$_ENDEDD

   00000000'9F            04     FB  0567       		CALLS	#$$T1,@#LIB$SIGNAL

                                     056E   436 	$EXIT_S				; E X I T

                          01     DD  056E       		PUSHL	#1

   00000000'GF            01     FB  0570       		CALLS	#1,G^SYS$EXIT

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  19

1.17            ERROR AND AST HANDLERS                                                                                           (4)



                                     0577   439 	.SBTTL	ERROR AND AST HANDLERS

                                     0577   440 ;****************************************************************

                                     0577   441 ; FATAL EXIT

                                     0577   442 ;*****************************************************************

                                     0577   443 FATAL:	PUTMSG	<#UET$_ABENDD,#2,#PROC_NAME,#0> ;NO RETURN

                          00     DD  0577       	  	PUSHL	#0

                 000000EF'8F     DD  0579       	  	PUSHL	#PROC_NAME

                          02     DD  057F       	  	PUSHL	#2

                 007410E4 8F     DD  0581       	  	PUSHL	#UET$_ABENDD

   00000000'9F            04     FB  0587       		CALLS	#$$T1,@#LIB$SIGNAL

                                 04  058E   444 	RET

                                     058F   445 ;********************************************************************************

                                     058F   446 ;	COME HERE WHEN DETECTING AN ERROR RETURN FROM RMS RAB

                                     058F   447 ;********************************************************************************

                               0FFC  058F   448 RMS_ERR: .WORD	^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11> ; RMS PROBLEM WITH RAB

   00000006'EF            01     90  0591   449 	MOVB	#1,EOF			; SET EOF

   0000029C'EF   00000000'8F     D1  0598   450 	CMPL	#RMS$_EOF,RAB_CONF+RAB$L_STS ; WAS IT EOF?

                          09     13  05A3   451 	BEQL	10$			; YES

                                     05A5   452 	PUTMSG	<R0>

                          50     DD  05A5       	  	PUSHL	R0

   00000000'9F            01     FB  05A7       		CALLS	#$$T1,@#LIB$SIGNAL

                                     05AE   453 10$:

                                     05AE   454 	$DISCONNECT RAB=RAB_CONF	; DISCONNECT THE RAB FROM THE FAB

                 00000294'EF     DF  05AE       		PUSHAL	RAB_CONF

   00000000'9F            01     FB  05B4       		CALLS	#$$.TMP1,@#SYS$DISCONNECT

            09            50     E8  05BB   455 	BLBS	R0,20$

                                     05BE   456 	PUTMSG	<R0>

                          50     DD  05BE       	  	PUSHL	R0

   00000000'9F            01     FB  05C0       		CALLS	#$$T1,@#LIB$SIGNAL

                                     05C7   457 20$:

                                     05C7   458 	$CLOSE	FAB=FAB_CONF		; CLOSE FILE UETINIDEV.DAT

                 00000244'EF     DF  05C7       		PUSHAL	FAB_CONF

   00000000'9F            01     FB  05CD       		CALLS	#$$.TMP1,@#SYS$CLOSE

            09            50     E8  05D4   459 	BLBS	R0,30$

                                     05D7   460 	PUTMSG	<R0>

                          50     DD  05D7       	  	PUSHL	R0

   00000000'9F            01     FB  05D9       		CALLS	#$$T1,@#LIB$SIGNAL

                                     05E0   461 30$:

                                 04  05E0   462 	RET

                                     05E1   463 ;

                                     05E1   464 ;********************************************************************************

                                     05E1   465 ;	COME HERE IN CASE OF UNEXPECTED SYSTEM SERVICE ERROR.

                                     05E1   466 ;********************************************************************************

                                     05E1   467 DIE:

            52            50     D0  05E1   468 	MOVL	R0,R2			; SAVE SERVICE RETURN CODE

                                     05E4   469 	PUTMSG	<#UET$_SYSERRORPC,#2,#PROC_NAME,DIEARG,R2>

                          52     DD  05E4       	  	PUSHL	R2

                 00000001'EF     DD  05E6       	  	PUSHL	DIEARG

                 000000EF'8F     DD  05EC       	  	PUSHL	#PROC_NAME

                          02     DD  05F2       	  	PUSHL	#2

                 007410F2 8F     DD  05F4       	  	PUSHL	#UET$_SYSERRORPC

   00000000'9F            05     FB  05FA       		CALLS	#$$T1,@#LIB$SIGNAL

            52   FFFFFFFF 8F     D0  0601   470 	MOVL	#ERR_RET,R2

                          FEF9   31  0608   471 	BRW	CLEANERR		; AND CLEANUP BEFORE EXIT.

                                     060B   472 ;

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  20

1.17            ERROR AND AST HANDLERS                                                                                           (4)



                                     060B   474 ;********************************************************************************

                                     060B   475 ;

                                     060B   476 ;	THIS IS THE AST HANDLER FOR SERVICING A CONTROL-C

                                     060B   477 ;	ENTERED AT THE CONSOLE IN ORDER TO STOP EXECUTION OF THIS PART OF

                                     060B   478 ;	THE UETP.  AN EVENT FLAG IS SET IN CLUSTER 2

                                     060B   479 ;	WHICH WILL CAUSE THE MAIN ROUTINE TO BE RUNNABLE AGAIN.

                                     060B   480 ;	UPON BEING AWAKENED, THE MAIN ROUTINE WILL DELETE ALL

                                     060B   481 ;	DETACHED PROCESSES CREATED EARLIER AND EXIT.

                                     060B   482 ;

                                     060B   483 ;********************************************************************************

                                     060B   484 CCASTHAND:

                               0FFC  060B   485 	.WORD	^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11> ; ENTRY MASK

                                     060D   486 	PUTMSG	<#UET$_TEXT,#1,#CNTRLCMSG>

                 00000014'8F     DD  060D       	  	PUSHL	#CNTRLCMSG

                          01     DD  0613       	  	PUSHL	#1

                 00741133 8F     DD  0615       	  	PUSHL	#UET$_TEXT

   00000000'9F            03     FB  061B       		CALLS	#$$T1,@#LIB$SIGNAL

                                     0622   487 	$SETEF_S EFN=#CONTROLC			; SET THE CONTROL-C FLAG

                 00000042 8F     DD  0622       		PUSHL	#CONTROLC

   00000000'GF            01     FB  0628       		CALLS	#1,G^SYS$SETEF

                                     062F   488 	SERVCHEK

            0B            50     E8  062F       30044$:	BLBS	R0,30045$

   00000001'EF         FA AF     DE  0632       	MOVAL	30044$,DIEARG

                          FFA4   31  063A       	BRW	DIE

                                     063D       30045$:

   00000006'EF            00     E2  063D   489 	BBSS	#0,EOF,10$			; FORCE EOF ON INPUT

                          0B         0644       

   00000219'EF   00000005'EF     90  0645   490 	MOVB	DEVTCNTR,TOTAL_TESTS

                                     0650   491 10$:

                                 04  0650   492 	RET					; RETURN FROM AST

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  21

1.17            ERROR AND AST HANDLERS                                                                                           (4)



                                     0651   494 ;****************************************************************

                                     0651   495 ;

                                     0651   496 ; AST HANDLER FOR MAILBOX MESSAGES RECEIVED

                                     0651   497 ;

                                     0651   498 ;****************************************************************

                                     0651   499 MBXAST:

                               0FFC  0651   500 	.WORD	^M<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11> ; ENTRY MASK

       0000'8F   000000CB'EF     B1  0653   501 	CMPW	MBXIOSB,#SS$_NORMAL	;CHECK THAT I/O WAS OK

                          12     13  065C   502 	BEQL	10$			;YES

            50   000000CB'EF     3C  065E   503 	MOVZWL	MBXIOSB,R0		;NO

   00000001'EF         FE AF     DE  0665   504 	MOVAL	.,DIEARG		;ERROR ADDRESS

                          FF71   31  066D   505 	BRW	DIE			;ERROR EXIT 

                                     0670   506 ;

       0000'8F   0000004F'EF     B1  0670   507 10$:	CMPW	MBUFFERD+8,I^#MSG$_DELPROC ;CHECK MSG TYPE

                          33     13  0679   508 	BEQL	20$			;OK

   00000001'EF         FE AF     DE  067B   509 	MOVAL	.,DIEARG		;ERROR MSG

                                     0683   510 	PUTMSG	<#UET$_BADWORD,#2,MBUFFERD+8,DIEARG,#UET$_BADLOGICPC>

                 00741152 8F     DD  0683       	  	PUSHL	#UET$_BADLOGICPC

                 00000001'EF     DD  0689       	  	PUSHL	DIEARG

                 0000004F'EF     DD  068F       	  	PUSHL	MBUFFERD+8

                          02     DD  0695       	  	PUSHL	#2

                 0074102A 8F     DD  0697       	  	PUSHL	#UET$_BADWORD

   00000000'9F            05     FB  069D       		CALLS	#$$T1,@#LIB$SIGNAL

            52   FFFFFFFF 8F     D0  06A4   511 	MOVL	#ERR_RET,R2

                          FE56   31  06AB   512 	BRW	CLEANERR

                                     06AE   513 ;

                                     06AE   514 20$:

                                     06AE   515 	$SETEF_S EFN=#PROC_COMP		;PROCESS COMPLETED OK

                 00000041 8F     DD  06AE       		PUSHL	#PROC_COMP

   00000000'GF            01     FB  06B4       		CALLS	#1,G^SYS$SETEF

                                     06BB   516 	SERVCHEK

            0B            50     E8  06BB       30046$:	BLBS	R0,30047$

   00000001'EF         FA AF     DE  06BE       	MOVAL	30046$,DIEARG

                          FF18   31  06C6       	BRW	DIE

                                     06C9       30047$:

   00000000'EF            02     93  06C9   517 	BITB	#BIT1,CCFLAG		; HAS CTRL-C OCCURRED

                          23     12  06D0   518 	BNEQ	30$			; YES

   00000053'EF            03     28  06D2   519 	MOVC3	#3,MBUFFERD+12,USRMSG3	; GET RETURN CODE FROM DET PROC

                 00000241'EF         06D9       

                                     06DE   520 	PUTMSG	<#UET$_ENDEDT,#2,#USRMSG,#0>

                          00     DD  06DE       	  	PUSHL	#0

                 00000226'8F     DD  06E0       	  	PUSHL	#USRMSG

                          02     DD  06E6       	  	PUSHL	#2

                 0074108B 8F     DD  06E8       	  	PUSHL	#UET$_ENDEDT

   00000000'9F            04     FB  06EE       		CALLS	#$$T1,@#LIB$SIGNAL

                                     06F5   521 30$:

                                 04  06F5   522 	RET				;RETURN FROM AST

                                     06F6   523 ;

                                     06F6   524 	.END	UETPDEV01

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  22

SYMBOL TABLE                                                                                                                     (4)



$$$CHARS       = 00000001            FAB$B_RAT        0000001E            FAB$M_PPF_IND  = 00004000            

$$$STRINGS     = 00000000            FAB$B_RFM        0000001F            FAB$M_PPF_RAT  = 00003FC0            

$$.TAB         = 00000328 R     04   FAB$B_RTV        0000001C            FAB$M_PRN      = 00000004            

$$.TABEND      = 00000360 R     04   FAB$B_SHR        00000017            FAB$M_PUT      = 00000001            

$$.TMP         = 00000000            FAB$C_BID      = 00000003            FAB$M_RCK      = 00800000            

$$.TMP1        = 00000001            FAB$C_BLN        00000050            FAB$M_RWC      = 00000800            

$$.TMP2        = 000000EF            FAB$C_FIX      = 00000001            FAB$M_RWO      = 00000080            

$$ARGS         = 0000000C            FAB$C_HSH      = 00000030            FAB$M_SCF      = 00004000            

$$T1           = 00000004            FAB$C_IDX      = 00000020            FAB$M_SHRDEL   = 00000004            

BIT...         = 0000001A            FAB$C_MAXRFM   = 00000003            FAB$M_SHRGET   = 00000002            

BIT1           = 00000002            FAB$C_REL      = 00000010            FAB$M_SHRPUT   = 00000001            

CCASTHAND        0000060B R     05   FAB$C_RFM_DFLT = 00000002            FAB$M_SHRUPD   = 00000008            

CCBIT          = 00000002            FAB$C_SEQ      = 00000000            FAB$M_SPL      = 00002000            

CCFLAG           00000000 R     04   FAB$C_UDF      = 00000000            FAB$M_SQO      = 00000040            

CLEANERR         00000504 R     05   FAB$C_VAR      = 00000002            FAB$M_SUP      = 00000004            

CLEANUP          00000501 R     05   FAB$C_VFC      = 00000003            FAB$M_TEF      = 10000000            

CLUSTER2         00000000 R     03   FAB$K_BLN        00000050            FAB$M_TMD      = 00000010            

CNTRLCMSG        00000014 R     03   FAB$L_ALQ        00000010            FAB$M_TMP      = 00000008            

COMMASK          00000010 R     03   FAB$L_CTX        00000018            FAB$M_TRN      = 00000010            

COMPLETE_M     = 00000002            FAB$L_DEV        00000040            FAB$M_UFM      = 04000000            

CONTROLC       = 00000042            FAB$L_DNA        00000030            FAB$M_UFO      = 00020000            

CONTROLC_M     = 00000004            FAB$L_FNA        0000002C            FAB$M_UPD      = 00000008            

CPBIT          = 00000001            FAB$L_FOP        00000004            FAB$M_UPI      = 00000040            

CPRLIST          00000360 R     04   FAB$L_JNL        00000020            FAB$M_WCK      = 00000200            

CREPRC$_BASPRI = 00000024            FAB$L_MRN        00000038            FAB$S_ORG      = 00000004            

CREPRC$_ERROR  = 00000014            FAB$L_NAM        00000028            FAB$S_PPF_RAT  = 00000008            

CREPRC$_IMAGE  = 00000008            FAB$L_SDC        00000044            FAB$V_BIO      = 00000005            

CREPRC$_INPUT  = 0000000C            FAB$L_STS        00000008            FAB$V_BLK      = 00000003            

CREPRC$_MBXUNT = 0000002C            FAB$L_STV        0000000C            FAB$V_BRO      = 00000006            

CREPRC$_NARGS  = 0000000C            FAB$L_XAB        00000024            FAB$V_CBT      = 00000015            

CREPRC$_OUTPUT = 00000010            FAB$M_BIO      = 00000020            FAB$V_CIF      = 00000019            

CREPRC$_PIDADR = 00000004            FAB$M_BLK      = 00000008            FAB$V_CR       = 00000001            

CREPRC$_PRCNAM = 00000020            FAB$M_BRO      = 00000040            FAB$V_CTG      = 00000014            

CREPRC$_PRVADR = 00000018            FAB$M_CBT      = 00200000            FAB$V_DEL      = 00000002            

CREPRC$_QUOTA  = 0000001C            FAB$M_CIF      = 02000000            FAB$V_DFW      = 00000005            

CREPRC$_STSFLG = 00000030            FAB$M_CR       = 00000002            FAB$V_DLT      = 0000000F            

CREPRC$_UIC    = 00000028            FAB$M_CTG      = 00100000            FAB$V_DMO      = 0000000C            

CTRLNAME         00000051 R     03   FAB$M_DEL      = 00000004            FAB$V_ESC      = 0000001B            

DEFAULT_NAM      00000066 R     03   FAB$M_DFW      = 00000020            FAB$V_EXE      = 00000007            

DEF_NAM_SIZ    = 00000004            FAB$M_DLT      = 00008000            FAB$V_FTN      = 00000000            

DELETE           000004A6 R     05   FAB$M_DMO      = 00001000            FAB$V_GET      = 00000001            

DETACH           0000006A R     03   FAB$M_ESC      = 08000000            FAB$V_INP      = 00000013            

DEVTCNTR         00000005 R     04   FAB$M_EXE      = 00000080            FAB$V_JNL      = 00000016            

DEV_NAME         000000DF R     04   FAB$M_FTN      = 00000001            FAB$V_KFO      = 0000001E            

DIE              000005E1 R     05   FAB$M_GET      = 00000002            FAB$V_MSE      = 00000004            

DIEARG           00000001 R     04   FAB$M_INP      = 00080000            FAB$V_MXV      = 00000001            

DISK_NAME        0000007D R     03   FAB$M_JNL      = 00400000            FAB$V_NAM      = 00000018            

EOF              00000006 R     04   FAB$M_KFO      = 40000000            FAB$V_NEF      = 0000000A            

ERR_RET        = FFFFFFFF            FAB$M_MSE      = 00000010            FAB$V_NFS      = 00000010            

FAB$B_BID        00000000            FAB$M_MXV      = 00000002            FAB$V_NIL      = 00000005            

FAB$B_BKS        0000003E            FAB$M_NAM      = 01000000            FAB$V_OFP      = 0000001D            

FAB$B_BLN        00000001            FAB$M_NEF      = 00000400            FAB$V_ORG      = 00000004            

FAB$B_DNS        00000035            FAB$M_NFS      = 00010000            FAB$V_POS      = 00000008            

FAB$B_FAC        00000016            FAB$M_NIL      = 00000020            FAB$V_PPF      = 00000012            

FAB$B_FNS        00000034            FAB$M_OFP      = 20000000            FAB$V_PPF_IND  = 0000000E            

FAB$B_FSZ        0000003F            FAB$M_POS      = 00000100            FAB$V_PPF_RAT  = 00000006            

FAB$B_ORG        0000001D            FAB$M_PPF      = 00040000            FAB$V_PRN      = 00000002            

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  23

SYMBOL TABLE                                                                                                                     (4)



FAB$V_PUT      = 00000000            NAM$C_BLN        00000038            NAM$V_QUOTED   = 00000012            

FAB$V_RCK      = 00000017            NAM$C_BLN_DIRWC  00000050            NAM$V_WILDCARD = 00000008            

FAB$V_RWC      = 0000000B            NAM$C_DVI      = 00000010            NAM$V_WILD_DIR = 00000014            

FAB$V_RWO      = 00000007            NAM$C_MAXRSS   = 00000080            NAM$V_WILD_GRP = 00000018            

FAB$V_SCF      = 0000000E            NAM$C_MAXRSSLCL= 00000060            NAM$V_WILD_MBR = 00000019            

FAB$V_SHRDEL   = 00000002            NAM$K_BLN        00000038            NAM$V_WILD_NAME= 00000005            

FAB$V_SHRGET   = 00000001            NAM$K_BLN_DIRWC  00000050            NAM$V_WILD_SFD1= 00000019            

FAB$V_SHRPUT   = 00000000            NAM$L_DIRWCC1    00000040            NAM$V_WILD_SFD2= 0000001A            

FAB$V_SHRUPD   = 00000003            NAM$L_DIRWCC2    00000044            NAM$V_WILD_SFD3= 0000001B            

FAB$V_SPL      = 0000000D            NAM$L_DIRWCC3    00000048            NAM$V_WILD_SFD4= 0000001C            

FAB$V_SQO      = 00000006            NAM$L_DIRWCC4    0000004C            NAM$V_WILD_SFD5= 0000001D            

FAB$V_SUP      = 00000002            NAM$L_DWC        00000038            NAM$V_WILD_SFD6= 0000001E            

FAB$V_TEF      = 0000001C            NAM$L_ESA        0000000C            NAM$V_WILD_SFD7= 0000001F            

FAB$V_TMD      = 00000004            NAM$L_FNB        00000034            NAM$V_WILD_TYPE= 00000004            

FAB$V_TMP      = 00000003            NAM$L_RLF        00000010            NAM$V_WILD_UFD = 00000018            

FAB$V_TRN      = 00000004            NAM$L_RSA        00000004            NAM$V_WILD_VER = 00000003            

FAB$V_UFM      = 0000001A            NAM$L_WCC        00000030            NAM$W_DID        0000002A            

FAB$V_UFO      = 00000011            NAM$M_DIR_LVLS = 00E00000            NAM$W_DID_NUM    0000002A            

FAB$V_UPD      = 00000003            NAM$M_EXP_DEV  = 00000080            NAM$W_DID_RVN    0000002E            

FAB$V_UPI      = 00000006            NAM$M_EXP_DIR  = 00000040            NAM$W_DID_SEQ    0000002C            

FAB$V_WCK      = 00000009            NAM$M_EXP_NAME = 00000004            NAM$W_FID        00000024            

FAB$W_BLS        0000003C            NAM$M_EXP_TYPE = 00000002            NAM$W_FID_NUM    00000024            

FAB$W_DEQ        00000014            NAM$M_EXP_VER  = 00000001            NAM$W_FID_RVN    00000028            

FAB$W_IFI        00000002            NAM$M_GRP_MBR  = 00080000            NAM$W_FID_SEQ    00000026            

FAB$W_MRS        00000036            NAM$M_HIGHVER  = 00008000            NAM$W_PRV_DID    0000003A            

FAB_CONF         00000244 R     04   NAM$M_LOWVER   = 00004000            NAMBLK           00000328 R     04   

FAB_DEVT         000002D8 R     04   NAM$M_NODE     = 00020000            NAME_DES         000000D7 R     04   

FATAL            00000577 R     05   NAM$M_PPF      = 00010000            NAME_SIZE      = 0000000D            

FILE_NAME        0000009A R     03   NAM$M_QUOTED   = 00040000            NXTPROC          000003A0 R     05   

GBL...         = 00000000            NAM$M_WILDCARD = 00000100            OUTDES           000000EC R     04   

GETJPI_LIST      00000007 R     04   NAM$M_WILD_DIR = 00100000            OUTLEN           000000E8 R     04   

IO$M_CTRLCAST    ********   X   05   NAM$M_WILD_GRP = 01000000            PIDADR           00000178 R     04   

IO$_READVBLK     ********   X   05   NAM$M_WILD_MBR = 02000000            PQL$_ASTLM       ********   X   04   

IO$_SETMODE      ********   X   05   NAM$M_WILD_NAME= 00000020            PQL$_BIOLM       ********   X   04   

JPI$_ASTLM       ********   X   04   NAM$M_WILD_SFD1= 02000000            PQL$_DIOLM       ********   X   04   

JPI$_BIOLM       ********   X   04   NAM$M_WILD_SFD2= 04000000            PQL$_LISTEND     ********   X   04   

JPI$_DIOLM       ********   X   04   NAM$M_WILD_SFD3= 08000000            PQL$_TQELM       ********   X   04   

JPI$_TQLM        ********   X   04   NAM$M_WILD_SFD4= 10000000            PRIN_NAME        000000A7 R     03   

JPI$_UIC         ********   X   04   NAM$M_WILD_SFD5= 20000000            PROC_COMP      = 00000041            

LIB$SIGNAL       ********   X   05   NAM$M_WILD_SFD6= 40000000            PROC_NAME        000000EF R     03   

LOGIN            000000BC R     03   NAM$M_WILD_SFD7= 80000000            PROC_STRT      = 00000040            

MBLOGNAM         000000DB R     03   NAM$M_WILD_TYPE= 00000010            PSBIT          = 00000000            

MBUFFERD         00000047 R     04   NAM$M_WILD_UFD = 01000000            QLIST            0000017C R     04   

MBXAST           00000651 R     05   NAM$M_WILD_VER = 00000008            QL_ASTLM         0000017D R     04   

MBXCHAN          000000C7 R     04   NAM$S_DIR_LVLS = 00000003            QL_BIOLM         00000182 R     04   

MBXIOSB          000000CB R     04   NAM$T_DVI        00000014            QL_DIOLM         00000187 R     04   

MBXUNIT          000000D3 R     04   NAM$V_DIR_LVLS = 00000015            QL_TQELM         0000018C R     04   

MSG$_DELPROC     ********   X   05   NAM$V_EXP_DEV  = 00000007            RAB$B_BID        00000000            

MSGSIZ         = 00000016            NAM$V_EXP_DIR  = 00000006            RAB$B_BLN        00000001            

NAM$B_BID        00000000            NAM$V_EXP_NAME = 00000002            RAB$B_KRF        00000035            

NAM$B_BLN        00000001            NAM$V_EXP_TYPE = 00000001            RAB$B_KSZ        00000034            

NAM$B_CURLVL     00000038            NAM$V_EXP_VER  = 00000000            RAB$B_MBC        00000037            

NAM$B_ESL        0000000B            NAM$V_GRP_MBR  = 00000013            RAB$B_MBF        00000036            

NAM$B_ESS        0000000A            NAM$V_HIGHVER  = 0000000F            RAB$B_PSZ        00000034            

NAM$B_RSL        00000003            NAM$V_LOWVER   = 0000000E            RAB$B_RAC        0000001E            

NAM$B_RSS        00000002            NAM$V_NODE     = 00000011            RAB$B_ROP1       00000005            

NAM$C_BID      = 00000002            NAM$V_PPF      = 00000010            RAB$B_ROP2       00000006            

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  24

SYMBOL TABLE                                                                                                                     (4)



RAB$B_ROP3       00000007            RAB$V_HSH      = 00000007            SHR$_BADWORD   = 00001028            

RAB$B_TMO        0000001F            RAB$V_KGE      = 00000015            SHR$_BEGIN     = 00001030            

RAB$C_BID      = 00000001            RAB$V_KGT      = 00000016            SHR$_BEGIND    = 00001038            

RAB$C_BLN        00000044            RAB$V_LIM      = 0000000E            SHR$_BEGINT    = 00001040            

RAB$C_KEY      = 00000001            RAB$V_LOA      = 0000000D            SHR$_CLICB     = 00001048            

RAB$C_RFA      = 00000002            RAB$V_LOC      = 00000010            SHR$_CLOSEDEL  = 00001218            

RAB$C_SEQ      = 00000000            RAB$V_MAS      = 00000005            SHR$_CLOSEIN   = 00001050            

RAB$K_BLN        00000044            RAB$V_NLK      = 00000014            SHR$_CLOSEOUT  = 00001058            

RAB$L_BKT        00000038            RAB$V_NXR      = 00000017            SHR$_CONFDEL   = 000011F8            

RAB$L_CTX        00000018            RAB$V_PMT      = 0000001E            SHR$_COPIEDB   = 00001060            

RAB$L_DCT        00000038            RAB$V_PPF_IND  = 0000000E            SHR$_COPIEDR   = 00001068            

RAB$L_FAB        0000003C            RAB$V_PPF_RAT  = 00000006            SHR$_CREATED   = 00001070            

RAB$L_KBF        00000030            RAB$V_PTA      = 0000001D            SHR$_DELETED   = 00001200            

RAB$L_PBF        00000030            RAB$V_RAH      = 00000009            SHR$_DELINTERR = 00001240            

RAB$L_RBF        00000028            RAB$V_RLK      = 00000013            SHR$_DELVER    = 00001208            

RAB$L_RFA0       00000010            RAB$V_RNE      = 00000018            SHR$_DIRTOOBUS = 00001220            

RAB$L_RHB        0000002C            RAB$V_RNF      = 0000001B            SHR$_ENDED     = 00001078            

RAB$L_ROP        00000004            RAB$V_TMO      = 00000019            SHR$_ENDEDD    = 00001080            

RAB$L_STS        00000008            RAB$V_TPT      = 00000001            SHR$_ENDEDT    = 00001088            

RAB$L_STV        0000000C            RAB$V_UIF      = 00000004            SHR$_FILNOTDEL = 000011F0            

RAB$L_UBF        00000024            RAB$V_ULK      = 00000012            SHR$_FILNOTPUR = 00001230            

RAB$M_ASY      = 00000001            RAB$V_WAT      = 00000011            SHR$_FILPURGED = 00001250            

RAB$M_BIO      = 00000800            RAB$V_WBH      = 0000000A            SHR$_HASHCONCAT= 000011D8            

RAB$M_CCO      = 80000000            RAB$W_ISI        00000002            SHR$_HIGHVER   = 00001148            

RAB$M_CVT      = 04000000            RAB$W_RFA        00000010            SHR$_IDXCONCAT = 00001138            

RAB$M_EOF      = 00000100            RAB$W_RFA4       00000014            SHR$_INCOMPAT  = 000011E0            

RAB$M_FDL      = 00000040            RAB$W_RSZ        00000022            SHR$_NEWFILES  = 00001090            

RAB$M_HSH      = 00000080            RAB$W_USZ        00000020            SHR$_NOFILPURG = 00001228            

RAB$M_KGE      = 00200000            RAB_CONF         00000294 R     04   SHR$_NOJOBID   = 000011A0            

RAB$M_KGT      = 00400000            RDFLAGS          00000191 R     04   SHR$_NOJOBNAME = 000011A8            

RAB$M_LIM      = 00004000            READ             000001CA R     05   SHR$_NOQUEUE   = 00001198            

RAB$M_LOA      = 00002000            RECORD_BUF       00000195 R     04   SHR$_NOTCMPLT  = 000011C0            

RAB$M_LOC      = 00010000            RMS$_EOF         ********   X   05   SHR$_NOTCOPIED = 000011B8            

RAB$M_MAS      = 00000020            RMS_ERR          0000058F R     05   SHR$_NOVALUE   = 00001100            

RAB$M_NLK      = 00100000            RUN_TEST         000002B7 R     05   SHR$_NOWILD    = 00001128            

RAB$M_NXR      = 00800000            SHR$K_SHRDEF   = 00000001            SHR$_OPENIN    = 00001098            

RAB$M_PMT      = 40000000            SHR$_ABEND     = 000010D8            SHR$_OPENOUT   = 000010A0            

RAB$M_PPF_IND  = 00004000            SHR$_ABENDD    = 000010E0            SHR$_OVERLAY   = 000010A8            

RAB$M_PPF_RAT  = 00003FC0            SHR$_ABENDT    = 000010E8            SHR$_PARSEFAIL = 00001248            

RAB$M_PTA      = 20000000            SHR$_APPENDEDB = 00001000            SHR$_PURGEVER  = 00001210            

RAB$M_RAH      = 00000200            SHR$_APPENDEDR = 00001008            SHR$_READERR   = 000010B0            

RAB$M_RLK      = 00080000            SHR$_ATPC      = 00001158            SHR$_RELCONCAT = 00001140            

RAB$M_RNE      = 01000000            SHR$_BADBYTE   = 00001010            SHR$_REPLACED  = 000010B8            

RAB$M_RNF      = 08000000            SHR$_BADCOPIES = 00001160            SHR$_RMSERROR  = 000011C8            

RAB$M_TMO      = 02000000            SHR$_BADDELIM  = 00001118            SHR$_SEARCHFAIL= 00001238            

RAB$M_TPT      = 00000002            SHR$_BADFIELD  = 00001018            SHR$_SYNTAX    = 000010F8            

RAB$M_UIF      = 00000010            SHR$_BADFORM   = 00001168            SHR$_SYSERROR  = 000011B0            

RAB$M_ULK      = 00040000            SHR$_BADJOBID  = 00001170            SHR$_SYSERRORPC= 000010F0            

RAB$M_WAT      = 00020000            SHR$_BADJOBNAME= 00001178            SHR$_TEXT      = 00001130            

RAB$M_WBH      = 00000400            SHR$_BADKEY    = 00001108            SHR$_UNXPCTSTS = 000011D0            

RAB$S_PPF_RAT  = 00000008            SHR$_BADLOGIC  = 00001120            SHR$_VALERR    = 000011E8            

RAB$V_ASY      = 00000000            SHR$_BADLOGICPC= 00001150            SHR$_WILDCONCAT= 000010C0            

RAB$V_BIO      = 0000000B            SHR$_BADLONG   = 00001020            SHR$_WILDOUTVER= 000010C8            

RAB$V_CCO      = 0000001F            SHR$_BADPRTY   = 00001180            SHR$_WRITEERR  = 000010D0            

RAB$V_CVT      = 0000001A            SHR$_BADQNAME  = 00001188            SS$_NONEXPR      ********   X   05   

RAB$V_EOF      = 00000008            SHR$_BADTIME   = 00001190            SS$_NORMAL       ********   X   05   

RAB$V_FDL      = 00000006            SHR$_BADVALUE  = 00001110            STARTED_M      = 00000001            

UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  25

SYMBOL TABLE                                                                                                                     (4)



SUBOUT           00000100 R     03   

SUBOUTE          00000110 R     03   

SUCCESS        = 00000001            

SYS$ASCEFC       ********   X   05   

SYS$ASSIGN       ********   X   05   

SYS$CLOSE        ********  GX   05   

SYS$CLREF        ********   X   05   

SYS$CONNECT      ********  GX   05   

SYS$CRELOG       ********   X   05   

SYS$CREMBX       ********   X   05   

SYS$CREPRC       ********   X   05   

SYS$DACEFC       ********   X   05   

SYS$DASSGN       ********   X   05   

SYS$DELLOG       ********   X   05   

SYS$DELMBX       ********   X   05   

SYS$DISCONNECT   ********  GX   05   

SYS$EXIT         ********   X   05   

SYS$FORCEX       ********   X   05   

SYS$GET          ********  GX   05   

SYS$GETCHN       ********   X   05   

SYS$GETJPI       ********   X   05   

SYS$OPEN         ********  GX   05   

SYS$PARSE        ********  GX   05   

SYS$QIO          ********   X   05   

SYS$QIOW         ********   X   05   

SYS$READEF       ********   X   05   

SYS$SEARCH       ********  GX   05   

SYS$SETEF        ********   X   05   

SYS$SETPRN       ********   X   05   

SYS$WFLOR        ********   X   05   

TAPE_NAME        0000012A R     03   

TEST_NAME        0000021E R     04   

TOTAL_TESTS      00000219 R     04   

TTCHAN           0000021A R     04   

TTNAME           00000120 R     03   

TTYS_NAME        0000013F R     03   

UET$_ABENDD    = 007410E4            

UET$_BADLOGICPC= 00741152            

UET$_BADWORD   = 0074102A            

UET$_BEGIND    = 0074103B            

UET$_BEGINT    = 00741043            

UET$_ENDEDD    = 00741083            

UET$_ENDEDT    = 0074108B            

UET$_SYSERRORPC= 007410F2            

UET$_TEXT      = 00741133            

UETP$_ABORTC     ********   X   05   

UETPDEV01        00000000 RG    05   

UIC              00000222 R     04   

USRMSG           00000226 R     04   

USRMSG2          0000022E R     04   

USRMSG3          00000241 R     04   

WAIT_OR_DONE     000003E1 R     05   

YES              00000154 R     03   





PROGRAM SECTION SYNOPSIS



UETPDEV01       VAX/VMS UETP PERIPHERAL DEVICES TEST             22-AUG-1978 03:21:26   VAX-11 MACRO X0.3-11               Page  26

PROGRAM SECTION SYNOPSIS                                                                                                         (4)



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

RODATA           0000015F      03     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD  NOWRT LONG  

RWDATA           00000394      04     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD    WRT LONG  

UETPDEV01        000006F6      05     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD  NOWRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

1128. BYTES LEFT IN FREE MEMORY POOL.

472. BYTES OF RECLAIMED MEMORY.

OBJ$:UETPDEV01,LIS$:UETPDEV01/-SP=SRC$:UETPLIBS,UETPDEV01

210 MLB DIR RDS - 1099 GETS TO DEFINE 68 MACROS. 200 INTER. FILE WRITES. 

