UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (2)      59  READ ONLY DATA

   (2)     101  READ/WRITE DATA

   (2)     166  MAIN PROGRAM

   (2)     180  MAIN CODE

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   1

1.09                                                                                                                             (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 UETPRIN00 - VAX/VMS UETP LINE PRINTER EXERCISER

                                     0000     2 	.IDENT	/1.09/

                                     0000     3 ;

                                     0000     4 ; COPYRIGHT (C) 1978

                                     0000     5 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

                                     0000     6 ;

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

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

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

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

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

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

                                     0000    13 ; REMAIN IN DEC.

                                     0000    14 ;

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

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

                                     0000    17 ; CORPORATION.

                                     0000    18 ;

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

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

                                     0000    21 ;

                                     0000    22 

                                     0000    23 ;++

                                     0000    24 ; FACILITY:

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

                                     0000    26 ;

                                     0000    27 ; ABSTRACT:

                                     0000    28 ;	THIS MODULE EXERCISES ANY LINE PRINTER IN THE VAX/VMS SYSTEM USING

                                     0000    29 ;	THE $OUTPUT SYSTEM SERVICE DIRECTIVE.

                                     0000    30 ;

                                     0000    31 ; ENVIRONMENT:

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

                                     0000    33 ;	AT ALL TIMES.

                                     0000    34 ;

                                     0000    35 ; AUTHOR: LARRY JONES,	CREATION DATE: NOVEMBER, 1977

                                     0000    36 ;

                                     0000    37 ; MODIFIED BY:

                                     0000    38 ;

                                     0000    39 ;	, : VERSION

                                     0000    40 ; 1.0	- 

                                     0000    41 ; 1.01	FIXED BEGIN MESSAGE LATE PROBLEM   LDJ 17-JAN-78

                                     0000    42 ; 1.02	CHANGE LOGICAL NAMES TO UETP$xxxx   RAB 31-JAN-78

                                     0000    43 ; 1.03 CHANGE U TO 'Y' AS VALUE OF UETP$DETACH  RAB 7-MAR-78

                                     0000    44 ; 1.04 CHANGE XIT CODE TO CTRLNAME FOR PDEV MSG USE  RAB 20-MAR-78

                                     0000    45 ; 1.05 PUT IN WATCHDOG TIMER FOR PAPER OUT LDJ 23-MAR-78

                                     0000    46 ; 1.06  CHNG MSG SEVERITY, # PAGES TO 2, REMOVE RETURN CODES  RAB 16-MAY-78

                                     0000    47 ; 1.07	REMOVE XTRA MSG ON TIMER EXIT, MISC CLEANUP  RAB 07-JUN-78

                                     0000    48 ; 1.08	ADD END MSG ON ERROR XIT, MISC CLEANUP	RAB 16-AUG-78

                                     0000    49 ; 1.09	MOVE SETEF #64 UP TO AVOID HANGING ON BAD DEV NAME RAB 18-AUG-78

                                     0000    50 ;--

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   2

1.09            READ ONLY DATA                                                                                                   (2)



                                     0000    53 	.SBTTL	READ ONLY DATA

                                 00000000    54 	.PSECT	RODATA,NOEXE,NOWRT,LONG

                                     0000    55 ;

                                     0000    56 ;	DEFINITIONS

                                     0000    57 ;

                           0000000D  0000    58 	CR=13

                           0000000A  0000    59 	LF=10

                           0000000C  0000    60 	FF=12

                           00000001  0000    61 	BIT0=1

                           00000002  0000    62 	BIT1=2

                           00000001  0000    63 	BIT1M=1

                                     0000    64 ;

                           00000037  0000    65 	LIN_PER_PAGE=55

                                     0000    66 ;

                           00000002  0000    67 	PAGES=2

                                     0000    68 ;

                           00000004  0000    69 	TIMEFN=4

                           0000003C  0000    70 	WATDOGTIM=60	; SECONDS

                                     0000    71 ;

                                     0000    72 ;

                                     0000    73 ;

                                     0000    74 TSTNAM:

                                     0000    75 	STRING	I,<UETPRIN00 >

                           0000000A  0000       	.LONG	$$$CHARS

                           00000008' 0004       	.ADDRESS .+4

      20 30 30 4E 49 52 50 54 45 55  0008       	.ASCII	\UETPRIN00 \

                                     0012    76 CNTRLCMSG:

                                     0012    77 	STRING	I,<aborted via a user control C>

                           0000001C  0012       	.LONG	$$$CHARS

                           0000001A' 0016       	.ADDRESS .+4

20 61 69 76 20 64 65 74 72 6F 62 61  001A       	.ASCII	\aborted via a user control C\

72 74 6E 6F 63 20 72 65 73 75 20 61  0026       

                        43 20 6C 6F  0032       

                                     0036    78 PAGEHEAD:

                                     0036    79 	STRING	I,<!^VAX/VMS USER ENVIRONMENT TEST PACKAGE >,-

                                     0036    80 		<LINE PRINTER TEST !AS AT !%D!_!_PAGE !UL!/!/>

                           00000054  0036       	.LONG	$$$CHARS

                           0000003E' 003A       	.ADDRESS .+4

53 55 20 53 4D 56 2F 58 41 56 5E 21  003E       	.ASCII	\!^VAX/VMS USER ENVIRONMENT TEST PACKAGE \

45 4D 4E 4F 52 49 56 4E 45 20 52 45  004A       

4B 43 41 50 20 54 53 45 54 20 54 4E  0056       

                        20 45 47 41  0062       

52 45 54 4E 49 52 50 20 45 4E 49 4C  0066       	.ASCII	\LINE PRINTER TEST !AS AT !%D!_!_PAGE !UL!/!/\

54 41 20 53 41 21 20 54 53 45 54 20  0072       

45 47 41 50 5F 21 5F 21 44 25 21 20  007E       

            2F 21 2F 21 4C 55 21 20  008A       

                                     0092    81 ;

                                     0092    82 CLUSTER2:

                                     0092    83 	STRING	I,<CLUSTER2>

                           00000008  0092       	.LONG	$$$CHARS

                           0000009A' 0096       	.ADDRESS .+4

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

                                     00A2    84 LOGNAM:

                                     00A2    85 	STRING	I,<UETP$CTRLNAME>

                           0000000D  00A2       	.LONG	$$$CHARS

                           000000AA' 00A6       	.ADDRESS .+4

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

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   3

1.09            READ ONLY DATA                                                                                                   (2)



                                 45  00B6       

                                     00B7    86 LOGNAM1:

                                     00B7    87 	STRING	I,<UETP$DETACH>

                           0000000B  00B7       	.LONG	$$$CHARS

                           000000BF' 00BB       	.ADDRESS .+4

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

                                     00CA    88 TTNAM:

                                     00CA    89 	STRING	I,<TT>

                           00000002  00CA       	.LONG	$$$CHARS

                           000000D2' 00CE       	.ADDRESS .+4

                              54 54  00D2       	.ASCII	\TT\

                                     00D4    90 TIME:

                  FFFFFFFF DC3CBA00  00D4    91 	.LONG	-10*1000*1000*WATDOGTIM,-1

                                     00DC    92 OFF_LINE:

                                     00DC    93 	STRING	I,<line printer offline>

                           00000014  00DC       	.LONG	$$$CHARS

                           000000E4' 00E0       	.ADDRESS .+4

72 65 74 6E 69 72 70 20 65 6E 69 6C  00E4       	.ASCII	\line printer offline\

            65 6E 69 6C 66 66 6F 20  00F0       

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   4

1.09            READ/WRITE DATA                                                                                                  (2)



                                     00F8    95 	.SBTTL	READ/WRITE DATA

                                 00000000    96 	.PSECT	RWDATA,WRT,NOEXE,LONG

                                     0000    97 ;

                                     0000    98 LPCHAN:

                           00000000  0000    99 	.LONG	0	; CHANNEL NUMBER SAVE

                                     0004   100 ERROR_CNT:

                           00000000  0004   101 	.LONG	0	; CUMULATIVE ERROR COUNT FOR THIS PROGRAM

                                     0008   102 TTCHAN:

                           00000000  0008   103 	.LONG	0	; CHANNEL NUMBER FOR TTY

                                     000C   104 LPNAME:

                           00000003  000C   105 	.LONG	3	; DEVICE NAME DESC.

                           00000025' 0010   106 	.ADDRESS LPNAME_AS

                                     0014   107 PROCESS_NAME:

                           0000000C' 0014   108 	.LONG	PNL

                           0000001C' 0018   109 	.ADDRESS .+4

         5F 30 4E 49 52 50 54 45 55  001C   110 	.ASCII	/UETPRIN0_/

                                     0025   111 LPNAME_AS:

                           00000029  0025   112 	.BLKB	4

                           0000000C  0029   113 	PNL=.-PROCESS_NAME-9

                                     0029   114 IOSTAT:

                           00000031  0029   115 	.BLKL	2	; I/O STATUS BLOCK

                                     0031   116 			; BIT0 IS CNTRL C FLAG

                                     0031   117 			; BIT1 IS WATCH DOG TIMER STATUS BIT

                                     0031   118 DIEARG:

                           00000000  0031   119 	.LONG	0	; ARGUMENT FOR DYING PC

                                     0035   120 PAGENUM:

                           00000001  0035   121 	.LONG	1	; PAGE NUMBER COUNTER

                                     0039   122 PASCNT:

                           00000000  0039   123 	.LONG	0	; PASS COUNTER

                                     003D   124 TRAN_CNT:

                           00000000  003D   125 	.LONG	0	; WRITE TRANSFER COUNT

                                     0041   126 ITERATIONS:

                           00000000  0041   127 	.LONG	0	; NUMBER OF ITERATIONS PER PASS

                                     0045   128 STRLEN:

                           00000000  0045   129 	.LONG	0	; FAO OUTPUT LENGTH

                                     0049   130 ERR_STRLEN:

                           00000000  0049   131 	.LONG	0	; ERROR FAO STRING LENGTH

                                     004D   132 ARGS:

                           00000059  004D   133 	.BLKL	3	; SPACE FOR 3 ARGUMENTS

                                     0059   134 FAO_BUF:		; PAGE HEADER BUFFER

                           00000100' 0059   135 	.LONG	FAO_BUFL

                           00000061' 005D   136 	.ADDRESS FAO_BUFFER

                                     0061   137 FAO_BUFFER:

                           00000161  0061   138 	.BLKB	256

                           00000100  0161   139 	FAO_BUFL=.-FAO_BUFFER

                                     0161   140 LPDATA:			; TEST DATA

                           00000021  0161   141 	A=^X21

                           00000084  01E5   153 	LPDATAL=.-LPDATA

                                     01E5   154 SPARE:			; WRAP AROUND BYTE

                                 00  01E5   155 	.BYTE	0

                                     01E6   156 ;

                                 0C  01E6   157 NEWPAGE: .BYTE	FF

                                     01E7   158 ;

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   5

1.09            MAIN PROGRAM                                                                                                     (2)



                                     01E7   160 	.SBTTL	MAIN PROGRAM

                                 00000000   161 	.PSECT	UETPRT,EXE,NOWRT,LONG

                                     0000   162 ;

                                     0000   163 ; ROTATE THE DATA BUFFER SUBROUTINE

                                     0000   164 ;

                                     0000   165 ROTATE:

   000001E5'EF   00000161'EF     90  0000   166 	MOVB	LPDATA,SPARE			; SAVE THE SHIFTED BYTE

   00000162'EF       0084 8F     28  000B   167 	MOVC3	#LPDATAL,LPDATA+1,LPDATA	; ROTATE THE PATTERN

                 00000161'EF         0014       

                                 05  0019   168 	RSB					; RETURN

                                     001A   169 ;

                                     001A   170 DIE:

                          032C   31  001A   171 	BRW	ERR_EXIT			; EXIT IN DISGRACE

                                     001D   172 ;

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   6

1.09            MAIN CODE                                                                                                        (2)



                                     001D   174 	.SBTTL	MAIN CODE

                                     001D   175 ;

                                     001D   176 ; THIS IS THE MAIN CODE FOR THE PRINTER TEST. 

                                     001D   177 ;

                                     001D   178 UETPRIN00::

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

                                     001F   180 	$ASCEFC_S	#64,CLUSTER2	; ASSIGN COMMON E.F. CLUSTER

                          00     DD  001F       		PUSHL	#0

                          00     DD  0021       		PUSHL	#0

                 00000092'EF     7F  0023       		PUSHAQ	CLUSTER2

                 00000040 8F     DD  0029       		PUSHL	#64

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

                                     0036   181 	SERVCHEK			; CHECK FOR ERRORS

            0B            50     E8  0036       30000$:	BLBS	R0,30001$

   00000031'EF         FA AF     DE  0039       	MOVAL	30000$,DIEARG

                          FFD6   31  0041       	BRW	DIE

                                     0044       30001$:

                                     0044   182 	$TRNLOG_S	LOGNAM,STRLEN,FAO_BUF,,,#5 ; GET CONTROLER NAME

                          05     DD  0044       		PUSHL	#5

                          00     DD  0046       		PUSHL	#0

                          00     DD  0048       		PUSHL	#0

                 00000059'EF     7F  004A       		PUSHAQ	FAO_BUF

                 00000045'EF     3F  0050       		PUSHAW	STRLEN

                 000000A2'EF     7F  0056       		PUSHAQ	LOGNAM

   00000000'GF            06     FB  005C       		CALLS	#6,G^SYS$TRNLOG

                                     0063   183 	SERVCHEK			; CHECK FOR ERRORS

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

   00000031'EF         FA AF     DE  0066       	MOVAL	30002$,DIEARG

                          FFA9   31  006E       	BRW	DIE

                                     0071       30003$:

                                     0071   184 	$SETEF_S	#64		; TELL UETPDEV01 TO CONTINUE

                 00000040 8F     DD  0071       		PUSHL	#64

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

                                     007E   185 	SERVCHEK			; CHECK FOR ERRORS

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

   00000031'EF         FA AF     DE  0081       	MOVAL	30004$,DIEARG

                          FF8E   31  0089       	BRW	DIE

                                     008C       30005$:

   00000025'EF   00000061'EF     D0  008C   186 	MOVL	FAO_BUFFER,LPNAME_AS	; SAVE CONTROLLER NAME

                                     0097   187 	PUTMSG	<#UETP$_BEGIND,#2,#TSTNAM,#0> ; PRINT STARTING MESSAGE

                          00     DD  0097       	  	PUSHL	#0

                 00000000'8F     DD  0099       	  	PUSHL	#TSTNAM

                          02     DD  009F       	  	PUSHL	#2

                 00000000'8F     DD  00A1       	  	PUSHL	#UETP$_BEGIND

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

                                     00AE   188 	$SETPRN_S	PROCESS_NAME	; SET THE PROCESS NAME

                 00000014'EF     7F  00AE       		PUSHAQ	PROCESS_NAME

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

                                     00BB   189 	SERVCHEK			; CHECK FOR ERROR

            0B            50     E8  00BB       30006$:	BLBS	R0,30007$

   00000031'EF         FA AF     DE  00BE       	MOVAL	30006$,DIEARG

                          FF51   31  00C6       	BRW	DIE

                                     00C9       30007$:

       504C 8F   00000025'EF     B1  00C9   190 	CMPW	LPNAME_AS,#^A/LP/	; IS THIS REALLY A LINEPRINTER?

                          0A     13  00D2   191 	BEQL	5$			; BR IF YES

            50   00000000'8F     D0  00D4   192 	MOVL	#SS$_IVDEVNAM,R0	; SET ERROR MESSAGE NAME

                          026B   31  00DB   193 	BRW	ERR_EXIT		; ELSE EXIT IN DISGUST!

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   7

1.09            MAIN CODE                                                                                                        (2)



                                     00DE   194 5$:

                                     00DE   195 	$TRNLOG_S LOGNAM1,STRLEN,FAO_BUF,,,#5 ; ARE WE DETACHED?

                          05     DD  00DE       		PUSHL	#5

                          00     DD  00E0       		PUSHL	#0

                          00     DD  00E2       		PUSHL	#0

                 00000059'EF     7F  00E4       		PUSHAQ	FAO_BUF

                 00000045'EF     3F  00EA       		PUSHAW	STRLEN

                 000000B7'EF     7F  00F0       		PUSHAQ	LOGNAM1

   00000000'GF            06     FB  00F6       		CALLS	#6,G^SYS$TRNLOG

                                     00FD   196 	SERVCHEK			; CHECK FOR ERROR

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

   00000031'EF         FA AF     DE  0100       	MOVAL	30008$,DIEARG

                          FF0F   31  0108       	BRW	DIE

                                     010B       30009$:

   00000061'EF         59 8F     91  010B   197 	CMPB	#^A/Y/,FAO_BUFFER	; ARE WE DETACHED

                          56     13  0113   198 	BEQL	20$			; BR IF DETACHED

                                     0115   199 	$ASSIGN_S TTNAM,TTCHAN		; ASSIGN THE TTY

                          7E     7C  0115       		CLRQ	-(SP)

                 00000008'EF     3F  0117       		PUSHAW	TTCHAN

                 000000CA'EF     7F  011D       		PUSHAQ	TTNAM

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

                                     012A   200 	SERVCHEK			; CHECK FOR ERROR

            0B            50     E8  012A       30010$:	BLBS	R0,30011$

   00000031'EF         FA AF     DE  012D       	MOVAL	30010$,DIEARG

                          FEE2   31  0135       	BRW	DIE

                                     0138       30011$:

                                     0138   201 	$QIOW_S	CHAN=TTCHAN,-

                                     0138   202 		FUNC=#IO$_SETMODE!IO$M_CTRLCAST,-

                                     0138   203 		P1  =CCASTHAND		; ENABLE CONTROL C AST

                          7E     7C  0138       		CLRQ	-(SP)

                          7E     7C  013A       		CLRQ	-(SP)

                          00     DD  013C       		PUSHL	#0

                 000002CF'EF     DF  013E       		PUSHAL	CCASTHAND

                          7E     7C  0144       		CLRQ	-(SP)

                          00     DD  0146       		PUSHL	#0

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

            7E   00000008'EF     3C  014D       		MOVZWL	TTCHAN,-(SP)

                          00     DD  0154       		PUSHL	#0

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

                                     015D   204 	SERVCHEK			; CHECK FOR ERRORS

            0B            50     E8  015D       30012$:	BLBS	R0,30013$

   00000031'EF         FA AF     DE  0160       	MOVAL	30012$,DIEARG

                          FEAF   31  0168       	BRW	DIE

                                     016B       30013$:

                                     016B   205 20$:

   00000014'EF   00000061'EF     D0  016B   206 	MOVL	FAO_BUFFER,LPNAME+8	; GET THE LP NAME

                                     0176   207 	$ASSIGN_S	LPNAME,LPCHAN	; ASSIGN THE LINE PRINTER

                          7E     7C  0176       		CLRQ	-(SP)

                 00000000'EF     3F  0178       		PUSHAW	LPCHAN

                 0000000C'EF     7F  017E       		PUSHAQ	LPNAME

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

                                     018B   208 	SERVCHEK			; CHECK FOR ERROR

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

   00000031'EF         FA AF     DE  018E       	MOVAL	30014$,DIEARG

                          FE81   31  0196       	BRW	DIE

                                     0199       30015$:

   00000029'EF            02     C8  0199   209 	BISL2	#BIT1,IOSTAT		; SET TIMER STATUS FLAG

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   8

1.09            MAIN CODE                                                                                                        (2)



                                     01A0   210 	$SETIMR_S #TIMEFN,TIME,TIMER_AST ; SET A TIMER

                          00     DD  01A0       		PUSHL	#0

                 000002EE'EF     DF  01A2       		PUSHAL	TIMER_AST

                 000000D4'EF     DF  01A8       		PUSHAL	TIME

                          04     DD  01AE       		PUSHL	#TIMEFN

   00000000'GF            04     FB  01B0       		CALLS	#4,G^SYS$SETIMR

                                     01B7   211 LOOPIT:

   0000004D'EF   0000000C'EF     DE  01B7   212 	MOVAL	LPNAME,ARGS		; SET CNTRL NAME

                 00000051'EF     D4  01C2   213 	CLRL	ARGS+4			; SET TIME ARG

   00000055'EF   00000035'EF     D0  01C8   214 	MOVL	PAGENUM,ARGS+8		; SET PAGE NUMBER

            5B   0000004D'EF     DE  01D3   215 	MOVAL	ARGS,R11		; SET ARGUMENT POINTER

                                     01DA   216 	$FAOL_S	PAGEHEAD,STRLEN,FAO_BUF,(R11) ; CREATE THE HEADER

                          6B     DF  01DA       		PUSHAL	(R11)

                 00000059'EF     7F  01DC       		PUSHAQ	FAO_BUF

                 00000045'EF     3F  01E2       		PUSHAW	STRLEN

                 00000036'EF     7F  01E8       		PUSHAQ	PAGEHEAD

   00000000'GF            04     FB  01EE       		CALLS	#4,G^SYS$FAOL

                                     01F5   217 	SERVCHEK			; CHECK FOR ERRORS

            0B            50     E8  01F5       30016$:	BLBS	R0,30017$

   00000031'EF         FA AF     DE  01F8       	MOVAL	30016$,DIEARG

                          FE17   31  0200       	BRW	DIE

                                     0203       30017$:

                                     0203   218 	$OUTPUT	LPCHAN,STRLEN,FAO_BUFFER; PRINT THE HEADER

                                     0203       	.SAVE

                                 00000000       	.PSECT	$ABS$,ABS

                                 00000203       	.RESTORE

                          7E     7C  0203       		CLRQ	-(SP)

                          20     DD  0205       		PUSHL	#32

                          00     DD  0207       		PUSHL	#0

                 00000045'EF     DD  0209       		PUSHL	STRLEN

                 00000061'EF     DF  020F       		PUSHAL	FAO_BUFFER

                          7E     7C  0215       		CLRQ	-(SP)

                          00     DD  0217       		PUSHL	#0

            7E            30     3C  0219       		MOVZWL	#IO$_WRITEVBLK,-(SP)

            7E   00000000'EF     3C  021C       		MOVZWL	LPCHAN,-(SP)

                          00     DD  0223       		PUSHL	#0

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

                                     022C   219 	SERVCHEK			; CHECK FOR ERRORS

            0B            50     E8  022C       30018$:	BLBS	R0,30019$

   00000031'EF         FA AF     DE  022F       	MOVAL	30018$,DIEARG

                          FDE0   31  0237       	BRW	DIE

                                     023A       30019$:

                                     023A   220 LOOP:

   00000029'EF            01     93  023A   221 	BITB	#BIT0,IOSTAT		; ANY CNTRL C'S TYPED?

                          03     13  0241   222 	BEQL	10$			; BR IF NOT

                          013D   31  0243   223 	BRW	SUC_EXIT		; EXIT

                                     0246   224 10$:

                                     0246   225 	$OUTPUT	LPCHAN,#LPDATAL,LPDATA	; PRINT LINE OF DATA

                          7E     7C  0246       		CLRQ	-(SP)

                          20     DD  0248       		PUSHL	#32

                          00     DD  024A       		PUSHL	#0

                 00000084 8F     DD  024C       		PUSHL	#LPDATAL

                 00000161'EF     DF  0252       		PUSHAL	LPDATA

                          7E     7C  0258       		CLRQ	-(SP)

                          00     DD  025A       		PUSHL	#0

            7E            30     3C  025C       		MOVZWL	#IO$_WRITEVBLK,-(SP)

            7E   00000000'EF     3C  025F       		MOVZWL	LPCHAN,-(SP)

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page   9

1.09            MAIN CODE                                                                                                        (2)



                          00     DD  0266       		PUSHL	#0

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

   00000029'EF            02     CA  026F   226 	BICL2	#BIT1,IOSTAT		; CLEAR TIMER STATUS FLAG

                                     0276   227 	SERVCHEK			; CHECK FOR ERRORS

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

   00000031'EF         FA AF     DE  0279       	MOVAL	30020$,DIEARG

                          FD96   31  0281       	BRW	DIE

                                     0284       30021$:

                     FD78 CF     16  0284   228 	JSB	ROTATE			; ADJUST THE DATA

   00000041'EF            37     F2  0288   229 	AOBLSS	#LIN_PER_PAGE,ITERATIONS,LOOP ; DO A PAGE

                          AA         028F       

                 00000041'EF     D4  0290   230 	CLRL	ITERATIONS		; RESET THE LINE COUNT

                 00000035'EF     D6  0296   231 	INCL	PAGENUM			; INCR PAGE COUNT

   00000039'EF            02     F2  029C   232 	AOBLSS	#PAGES,PASCNT,NEXT	; ALL PAGES DONE?

                          28         02A3       

                                     02A4   233 	$OUTPUT LPCHAN,#1,NEWPAGE	; EJECT TO A CLEAN PAGE

                          7E     7C  02A4       		CLRQ	-(SP)

                          20     DD  02A6       		PUSHL	#32

                          00     DD  02A8       		PUSHL	#0

                          01     DD  02AA       		PUSHL	#1

                 000001E6'EF     DF  02AC       		PUSHAL	NEWPAGE

                          7E     7C  02B2       		CLRQ	-(SP)

                          00     DD  02B4       		PUSHL	#0

            7E            30     3C  02B6       		MOVZWL	#IO$_WRITEVBLK,-(SP)

            7E   00000000'EF     3C  02B9       		MOVZWL	LPCHAN,-(SP)

                          00     DD  02C0       		PUSHL	#0

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

                          00B7   31  02C9   234 	BRW	SUC_EXIT		; EXIT MERRILY

                                     02CC   235 ;

                                     02CC   236 NEXT:

                          FEE8   31  02CC   237 	BRW	LOOPIT			; REACH FARTHER THAN A AOBLSS

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page  10

1.09            MAIN CODE                                                                                                        (2)



                                     02CF   239 CCASTHAND:

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

                                     02D1   241 	PUTMSG	<#UETP$_TEXT,#1,#CNTRLCMSG> ; LET THE USER KNOW YOU UNDERSTAND

                 00000012'8F     DD  02D1       	  	PUSHL	#CNTRLCMSG

                          01     DD  02D7       	  	PUSHL	#1

                 00000000'8F     DD  02D9       	  	PUSHL	#UETP$_TEXT

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

   00000029'EF            01     88  02E6   242 	BISB2	#BIT0,IOSTAT		; SET THE CNTRL C FLAG

                                 04  02ED   243 	RET				; RETURN

                                     02EE   244 ;

                                     02EE   245 TIMER_AST:

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

   00000029'EF            01     E3  02F0   247 	BBCS	#BIT1M,IOSTAT,10$	; BR IF NO ERROR

                          3C         02F7       

                 00000004'EF     D6  02F8   248 	INCL	ERROR_CNT		; BUMP ERROR COUNT

                                     02FE   249 	PUTMSG	<#UETP$_ERBOX,#1,ERROR_CNT,-

                                     02FE   250 		#UETP$_TEXT,#1,#OFF_LINE,-

                                     02FE   251 		#UETP$_ABENDD,#2,#TSTNAM,#0> ; PRINT ERROR MESSAGE

                          00     DD  02FE       	  	PUSHL	#0

                 00000000'8F     DD  0300       	  	PUSHL	#TSTNAM

                          02     DD  0306       	  	PUSHL	#2

                 00000000'8F     DD  0308       	  	PUSHL	#UETP$_ABENDD

                 000000DC'8F     DD  030E       	  	PUSHL	#OFF_LINE

                          01     DD  0314       	  	PUSHL	#1

                 00000000'8F     DD  0316       	  	PUSHL	#UETP$_TEXT

                 00000004'EF     DD  031C       	  	PUSHL	ERROR_CNT

                          01     DD  0322       	  	PUSHL	#1

                 00000000'8F     DD  0324       	  	PUSHL	#UETP$_ERBOX

   00000000'9F            0A     FB  032A       		CALLS	#$$T1,@#LIB$SIGNAL

                          005D   31  0331   252 	BRW	LAST			; GO AND EXIT

                                     0334   253 10$:

                                     0334   254 	$SETIMR_S #TIMEFN,TIME,TIMER_AST ; RESET WATCH DOG TIMER

                          00     DD  0334       		PUSHL	#0

                       B5 AF     DF  0336       		PUSHAL	TIMER_AST

                 000000D4'EF     DF  0339       		PUSHAL	TIME

                          04     DD  033F       		PUSHL	#TIMEFN

   00000000'GF            04     FB  0341       		CALLS	#4,G^SYS$SETIMR

                                 04  0348   255 	RET

                                     0349   256 ;

                                     0349   257 ERR_EXIT:

                 00000004'EF     D6  0349   258 	INCL	ERROR_CNT		; BUMP CUM. ERR COUNT

   00000031'EF            50     D0  034F   259 	MOVL	R0,DIEARG		; SAVE ERROR CODE

            03            00     ED  0356   260 	CMPZV	#0,#3,DIEARG,#4		; IS IT FATAL ERROR?

            04   00000031'EF         0359       

                          07     12  035F   261 	BNEQ	10$			; BRANCH IF NO

   00000031'EF            02     C2  0361   262 	SUBL2	#2,DIEARG		; SEVERITY FATAL -> ERROR

                                     0368   263 10$:

                                     0368   264 	PUTMSG	<#UETP$_ERBOX,#1,ERROR_CNT,-

                                     0368   265 		DIEARG>			; PRINT ERROR MESSAGE

                 00000031'EF     DD  0368       	  	PUSHL	DIEARG

                 00000004'EF     DD  036E       	  	PUSHL	ERROR_CNT

                          01     DD  0374       	  	PUSHL	#1

                 00000000'8F     DD  0376       	  	PUSHL	#UETP$_ERBOX

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

                                     0383   266 SUC_EXIT:

                                     0383   267 	$DASSGN_S	LPCHAN		; DEASSIGN THE LINE PRINTER

            7E   00000000'EF     3C  0383       		MOVZWL	LPCHAN,-(SP)

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page  11

1.09            MAIN CODE                                                                                                        (2)



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

                                     0391   268 LAST:

                                     0391   269 	PUTMSG	<#UETP$_ENDEDD,#2,#TSTNAM,#0> ; PRINT EXIT MESSAGE

                          00     DD  0391       	  	PUSHL	#0

                 00000000'8F     DD  0393       	  	PUSHL	#TSTNAM

                          02     DD  0399       	  	PUSHL	#2

                 00000000'8F     DD  039B       	  	PUSHL	#UETP$_ENDEDD

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

                                     03A8   270 	$DACEFC_S	#64		; RELEASE THE COMMON EFN CLUSTER

                 00000040 8F     DD  03A8       		PUSHL	#64

   00000000'GF            01     FB  03AE       		CALLS	#1,G^SYS$DACEFC

            52   00000025'EF     D0  03B5   271 	MOVL	LPNAME_AS,R2		; USE CTRLNAME AS EXIT CODE

            52   10000000 8F     C8  03BC   272 	BISL2	#1@28,R2		; SUPPRESS MSG OUTPUT BY DCL

                                     03C3   273 	$EXIT_S	R2

                          52     DD  03C3       		PUSHL	R2

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

                                     03CC   274 	.END	UETPRIN00

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page  12

SYMBOL TABLE                                                                                                                     (2)



$$$CHARS       = 00000014            IO$M_STARTUP   = 00000040            IO$_OFFSET     = 00000006            

$$$STRINGS     = 00000000            IO$M_SYNCH     = 00000200            IO$_PACKACK    = 00000008            

$$T1           = 00000004            IO$M_TIMED     = 00000080            IO$_PHYSICAL   = 0000001F            

A              = 00000047            IO$M_TRMNOECHO = 00001000            IO$_READHEAD   = 0000000E            

ARGS             0000004D R     03   IO$M_WRTATTN   = 00000100            IO$_READLBLK   = 00000021            

BIT...         = 0000000A            IO$S_FCODE     = 00000006            IO$_READPBLK   = 0000000C            

BIT0           = 00000001            IO$V_ABORT     = 00000008            IO$_READPRESET = 00000019            

BIT1           = 00000002            IO$V_ACCESS    = 00000006            IO$_READPROMPT = 00000037            

BIT1M          = 00000001            IO$V_ATTNAST   = 00000008            IO$_READTRACKD = 00000010            

CCASTHAND        000002CF R     04   IO$V_BINARY    = 00000006            IO$_READVBLK   = 00000031            

CLUSTER2         00000092 R     02   IO$V_CANCTRLO  = 00000006            IO$_RECAL      = 00000003            

CNTRLCMSG        00000012 R     02   IO$V_COMMOD    = 00000006            IO$_RELEASE    = 00000005            

CR             = 0000000D            IO$V_CREATE    = 00000007            IO$_RETCENTER  = 00000007            

DIE              0000001A R     04   IO$V_CTRLCAST  = 00000008            IO$_REWIND     = 00000024            

DIEARG           00000031 R     03   IO$V_CTRLYAST  = 00000007            IO$_REWINDOFF  = 00000022            

ERROR_CNT        00000004 R     03   IO$V_CVTLOW    = 00000008            IO$_SEARCH     = 00000009            

ERR_EXIT         00000349 R     04   IO$V_DATACHECK = 0000000E            IO$_SEEK       = 00000002            

ERR_STRLEN       00000049 R     03   IO$V_DELETE    = 00000008            IO$_SENSECHAR  = 0000001B            

FAO_BUF          00000059 R     03   IO$V_DMOUNT    = 0000000A            IO$_SENSEMODE  = 00000027            

FAO_BUFFER       00000061 R     03   IO$V_DSABLMBX  = 0000000A            IO$_SETCHAR    = 0000001A            

FAO_BUFL       = 00000100            IO$V_ENABLMBX  = 00000007            IO$_SETMODE    = 00000023            

FF             = 0000000C            IO$V_FCODE     = 00000000            IO$_SKIPFILE   = 00000025            

GBL...         = 00000000            IO$V_HANGUP    = 00000009            IO$_SKIPRECORD = 00000026            

IO$M_ABORT     = 00000100            IO$V_INHERLOG  = 0000000B            IO$_SPACEFILE  = 00000002            

IO$M_ACCESS    = 00000040            IO$V_INHEXTGAP = 0000000C            IO$_SPACERECORD= 00000009            

IO$M_ATTNAST   = 00000100            IO$V_INHRETRY  = 0000000F            IO$_STARTSPNDL = 00000019            

IO$M_BINARY    = 00000040            IO$V_INHSEEK   = 0000000C            IO$_UNLOAD     = 00000001            

IO$M_CANCTRLO  = 00000040            IO$V_INTERRUPT = 00000006            IO$_VIRTUAL    = 0000003F            

IO$M_COMMOD    = 00000040            IO$V_INTSKIP   = 00000008            IO$_WRITECHECK = 0000000A            

IO$M_CREATE    = 00000080            IO$V_MOUNT     = 00000009            IO$_WRITECHECKH= 00000018            

IO$M_CTRLCAST  = 00000100            IO$V_NOECHO    = 00000006            IO$_WRITEHEAD  = 0000000D            

IO$M_CTRLYAST  = 00000080            IO$V_NOFILTR   = 00000009            IO$_WRITELBLK  = 00000020            

IO$M_CVTLOW    = 00000100            IO$V_NOFORMAT  = 00000008            IO$_WRITEMARK  = 0000001C            

IO$M_DATACHECK = 00004000            IO$V_NOW       = 00000006            IO$_WRITEOF    = 00000028            

IO$M_DELETE    = 00000100            IO$V_NOWAIT    = 00000007            IO$_WRITEPBLK  = 0000000B            

IO$M_DMOUNT    = 00000400            IO$V_PACKED    = 00000007            IO$_WRITETRACKD= 0000000F            

IO$M_DSABLMBX  = 00000400            IO$V_PURGE     = 0000000B            IO$_WRITEVBLK  = 00000030            

IO$M_ENABLMBX  = 00000080            IO$V_READATTN  = 00000007            IOSTAT           00000029 R     03   

IO$M_FCODE     = 0000003F            IO$V_REVERSE   = 00000006            ITERATIONS       00000041 R     03   

IO$M_HANGUP    = 00000200            IO$V_SHUTDOWN  = 00000007            LAST             00000391 R     04   

IO$M_INHERLOG  = 00000800            IO$V_STARTUP   = 00000006            LF             = 0000000A            

IO$M_INHEXTGAP = 00001000            IO$V_SYNCH     = 00000009            LIB$SIGNAL       ********   X   04   

IO$M_INHRETRY  = 00008000            IO$V_TIMED     = 00000007            LIN_PER_PAGE   = 00000037            

IO$M_INHSEEK   = 00001000            IO$V_TRMNOECHO = 0000000C            LOGNAM           000000A2 R     02   

IO$M_INTERRUPT = 00000040            IO$V_WRTATTN   = 00000008            LOGNAM1          000000B7 R     02   

IO$M_INTSKIP   = 00000100            IO$_ACCESS     = 00000032            LOOP             0000023A R     04   

IO$M_MOUNT     = 00000200            IO$_ACPCONTROL = 00000038            LOOPIT           000001B7 R     04   

IO$M_NOECHO    = 00000040            IO$_CREATE     = 00000033            LPCHAN           00000000 R     03   

IO$M_NOFILTR   = 00000200            IO$_DEACCESS   = 00000034            LPDATA           00000161 R     03   

IO$M_NOFORMAT  = 00000100            IO$_DELETE     = 00000035            LPDATAL        = 00000084            

IO$M_NOW       = 00000040            IO$_DIAGNOSE   = 0000001D            LPNAME           0000000C R     03   

IO$M_NOWAIT    = 00000080            IO$_DRVCLR     = 00000004            LPNAME_AS        00000025 R     03   

IO$M_PACKED    = 00000080            IO$_ERASETAPE  = 00000006            NEWPAGE          000001E6 R     03   

IO$M_PURGE     = 00000800            IO$_LOGICAL    = 0000002F            NEXT             000002CC R     04   

IO$M_READATTN  = 00000080            IO$_MODIFY     = 00000036            OFF_LINE         000000DC R     02   

IO$M_REVERSE   = 00000040            IO$_MOUNT      = 00000039            PAGEHEAD         00000036 R     02   

IO$M_SHUTDOWN  = 00000080            IO$_NOP        = 00000000            PAGENUM          00000035 R     03   

UETPRIN00       - VAX/VMS UETP LINE PRINTER EXERCISER            22-AUG-1978 03:17:42   VAX-11 MACRO X0.3-11               Page  13

SYMBOL TABLE                                                                                                                     (2)



PAGES          = 00000002            

PASCNT           00000039 R     03   

PNL            = 0000000C            

PROCESS_NAME     00000014 R     03   

ROTATE           00000000 R     04   

SPARE            000001E5 R     03   

SS$_IVDEVNAM     ********   X   04   

STRLEN           00000045 R     03   

SUC_EXIT         00000383 R     04   

SYS$ASCEFC       ********   X   04   

SYS$ASSIGN       ********   X   04   

SYS$DACEFC       ********   X   04   

SYS$DASSGN       ********   X   04   

SYS$EXIT         ********   X   04   

SYS$FAOL         ********   X   04   

SYS$QIOW         ********   X   04   

SYS$SETEF        ********   X   04   

SYS$SETIMR       ********   X   04   

SYS$SETPRN       ********   X   04   

SYS$TRNLOG       ********   X   04   

TIME             000000D4 R     02   

TIMEFN         = 00000004            

TIMER_AST        000002EE R     04   

TRAN_CNT         0000003D R     03   

TSTNAM           00000000 R     02   

TTCHAN           00000008 R     03   

TTNAM            000000CA R     02   

UETP$_ABENDD     ********   X   04   

UETP$_BEGIND     ********   X   04   

UETP$_ENDEDD     ********   X   04   

UETP$_ERBOX      ********   X   04   

UETP$_TEXT       ********   X   04   

UETPRIN00        0000001D RG    04   

WATDOGTIM      = 0000003C            





PROGRAM SECTION SYNOPSIS



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

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

RODATA           000000F8      02     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD  NOWRT LONG  

RWDATA           000001E7      03     NOPIC   USR   CON   REL   LCL NOSHR NOEXE   RD    WRT LONG  

UETPRT           000003CC      04     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD  NOWRT LONG  

$ABS$            00000000      05     NOPIC   USR   CON   ABS   LCL NOSHR   EXE   RD    WRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

15824. BYTES LEFT IN FREE MEMORY POOL.

2056. BYTES OF RECLAIMED MEMORY.

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

52 MLB DIR RDS - 421 GETS TO DEFINE 29 MACROS. 76 INTER. FILE WRITES. 

