                                File-spec Resolution Test        4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 1
                                                                19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

    0	      1 MODULE XTESTF ( IDENT = '00.09',		%TITLE 'File-spec Resolution Test'
    0	      2 		MAIN = TEST_FILE_SPEC
    0	      3 		) =
    0	      4 BEGIN
    1	      5 
    1	      6 !
    1	      7 !			  COPYRIGHT (c) 1979 BY
    1	      8 !	      DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
    1	      9 !
    1	     10 ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND  COPIED
    1	     11 ! ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH  LICENSE AND WITH THE
    1	     12 ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE.  THIS SOFTWARE OR  ANY  OTHER
    1	     13 ! COPIES  THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
    1	     14 ! OTHER PERSON.  NO TITLE TO AND OWNERSHIP OF  THE  SOFTWARE  IS  HEREBY
    1	     15 ! TRANSFERRED.
    1	     16 !
    1	     17 ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE  WITHOUT  NOTICE
    1	     18 ! AND  SHOULD  NOT  BE  CONSTRUED  AS  A COMMITMENT BY DIGITAL EQUIPMENT
    1	     19 ! CORPORATION.
    1	     20 !
    1	     21 ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR  RELIABILITY  OF  ITS
    1	     22 ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
    1	     23 !
    1	     24 
    1	     25 !++
    1	     26 !
    1	     27 ! FACILITY:  BLISS Library
    1	     28 !
    1	     29 ! ABSTRACT:
    1	     30 !
    1	     31 !	This module tests XPO$FILE_SPEC.
    1	     32 !
    1	     33 ! ENVIRONMENT:  User-mode - system independent
    1	     34 !
    1	     35 ! AUTHOR:  Ward Clark,	CREATION DATE:  15 January 1979
    1	     36 !
    1	     37 !--

XTESTF                          File-spec Resolution Test        4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 2
00.09                                                           19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

    1	     39 !
    1	     40 ! TABLE OF CONTENTS:
    1	     41 !
    1	     42 
    1	     43 FORWARD ROUTINE
    1	     44     TEST_FILE_SPEC;					! XPO$FILE_SPEC test routine
    1	     45 
    1	     46 !
    1	     47 ! INCLUDE FILES:
    1	     48 !
    1	     49 
    1	     50 LIBRARY  'XPORT';					! XPORT control block and interface macros
    1	     52 
    1	     53 !
    1	     54 ! MACROS:
    1	     55 !
    1	     56 
    1	     57 MACRO
    1	     58     SKIP( literal_string ) =				! Prefix a literal string with a line-feed
M   1	     59 	%STRING( %CHAR(lf), literal_string ) %;
    1	     60 
    1	     61 !
    1	     62 ! EQUATED SYMBOLS:
    1	     63 !
    1	     64 
    1	     65 LITERAL
    1	     66     lf = %O'12';					! ASCII line feed character
    1	     67 
    1	     68 !
    1	     69 ! OWN STORAGE:
    1	     70 !
    1	     71 
    1	     72 OWN
    1	     73     terminal :  $XPO_IOB(),				! terminal IOB
    1	     74     file :  $XPO_IOB();					! data file IOB
    1	     75 
    1	     76 !
    1	     77 ! EXTERNAL REFERENCES:
    1	     78 !
    1	     79 
    1	     80 EXTERNAL ROUTINE
    1	     81     XPO$IO_FAILURE;					! Non-terminating I/O failure action routine

XTESTF                          File-spec Resolution Test        4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 3
00.09                                                           19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

    1	     83 GLOBAL ROUTINE TEST_FILE_SPEC =
    1	     84 
    1	     85 !++
    1	     86 !
    1	     87 ! FUNCTIONAL DESCRIPTION:
    1	     88 !
    1	     89 !	This routine tests XPO$FILE_SPEC.
    1	     90 !
    1	     91 ! FORMAL PARAMETERS:
    1	     92 !
    1	     93 !	None
    1	     94 !
    1	     95 ! IMPLICIT INPUTS:
    1	     96 !
    1	     97 !	None
    1	     98 !
    1	     99 ! IMPLICIT OUTPUTS:
    1	    100 !
    1	    101 !	None
    1	    102 !
    1	    103 ! COMPLETION CODES:
    1	    104 !
    1	    105 !	None
    1	    106 !
    1	    107 ! SIDE EFFECTS:
    1	    108 !
    1	    109 !	None
    1	    110 !
    1	    111 !--
    1	    112 
    1	    113     BEGIN
    2	    114 
    2	    115     LOCAL
    2	    116 	user_spec :  $STR_DESCRIPTOR(),			! User file specification descriptor
    2	    117 	default_spec :  $STR_DESCRIPTOR(),		! Default file specification descriptor
    2	    118 	related_spec :  $STR_DESCRIPTOR();		! Related file specification descriptor
    2	    119  
    2	    120 %IF %VARIANT NEQ 0 %THEN
U   2	    121 !
U   2	    122 ! Initialize all IOB's
U   2	    123 !
U   2	    124 
U   2	    125     $XPO_IOB_INIT( IOB = terminal );
U   2	    126     $XPO_IOB_INIT( IOB = file );
U   2	    127 %FI
    2	    128 
    2	    129 !
    2	    130 ! Initialize all string descriptors.
    2	    131 !
    2	    132 
    2	    133     $STR_DESC_INIT( DESCRIPTOR = user_spec,		! Initialize the three file-spec descriptors.
P   2	    134 			CLASS = DYNAMIC );
    2	    135     $STR_DESC_INIT( DESCRIPTOR = default_spec,
P   2	    136 			CLASS = DYNAMIC );
    2	    137     $STR_DESC_INIT( DESCRIPTOR = related_spec,
P   2	    138 			CLASS = DYNAMIC );
    2	    139 

XTESTF                          File-spec Resolution Test        4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 4
00.09                                                           19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

    2	    140 !
    2	    141 ! Open the terminal input file and send a greeting.
    2	    142 !
    2	    143 
    2	    144     $XPO_OPEN( IOB = terminal,				! Open the terminal file:
P   2	    145 	FILE_SPEC =$XPO_INPUT,				!    standard input file
P   2	    146 	OPTIONS = (INPUT,OUTPUT) );			!    input and output file
    2	    147 
    2	    148     $XPO_PUT( IOB = terminal,				! Send the user a greeting message.
P   2	    149 	STRING = skip('XPORT File-spec Resolution Test') );
    2	    150 
    2	    151 !
    2	    152 ! Update the three file specifications.
    2	    153 !
    2	    154 
    2	    155     WHILE 1 DO						! Loop forever.
    2	    156 	BEGIN
    3	    157 	IF NOT $XPO_GET( IOB = terminal,		! Ask for a user file specification.
P   3	    158 		PROMPT = skip('User file specification? ') )
    4	    159 	THEN
    3	    160 	    EXITLOOP;
    3	    161 
    3	    162 	IF .terminal[IOB$H_STRING] NEQ 0		! If a user file specification is specified,
    3	    163 	THEN						!
    3	    164 	    $STR_COPY( STRING = terminal[IOB$T_STRING],	! save it for later.
P   3	    165 			TARGET = user_spec );
    3	    166 
    3	    167 	IF NOT $XPO_GET( IOB = terminal,		! Ask for a default file specification.
P   3	    168 		PROMPT = ('Default file specification? ') )
    4	    169 	THEN
    3	    170 	    EXITLOOP;
    3	    171 
    3	    172 	IF .terminal[IOB$H_STRING] NEQ 0		! If a default file specification is specified,
    3	    173 	THEN						!
    3	    174 	    $STR_COPY( STRING = terminal[IOB$T_STRING],	! save it for later.
P   3	    175 			TARGET = default_spec );
    3	    176 
    3	    177 	IF NOT $XPO_GET( IOB = terminal,		! Ask for a related file specification.
P   3	    178 		PROMPT = ('Related file specification? ') )
    4	    179 	THEN
    3	    180 	    EXITLOOP;
    3	    181 
    3	    182 	IF .terminal[IOB$H_STRING] NEQ 0		! If a related file specification is specified,
    3	    183 	THEN						!
    3	    184 	    $STR_COPY( STRING = terminal[IOB$T_STRING],	! save it for later.
P   3	    185 			TARGET = related_spec );
    3	    186 
    3	    187 !
    3	    188 ! Open the resultant file and display its name.
    3	    189 !
    3	    190 
    3	    191 	IF $XPO_OPEN( IOB = file,			! Open the resultant file.
P   3	    192 		FILE_SPEC = user_spec,
P   3	    193 		DEFAULT = default_spec,
P   3	    194 		RELATED = related_spec,
P   3	    195 		OPTIONS = INPUT,
P   3	    196 		FAILURE = 0 )

XTESTF                          File-spec Resolution Test        4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 5
00.09                                                           19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

    4	    197 	THEN
    3	    198 	    file[IOB$G_COMP_CODE] = 2;			! Force a failure completion code.
    3	    199 
    3	    200 	XPO$IO_FAILURE( XPO$K_IO,			! Use failure action routine to display resultant file name.
    3	    201 			.file[IOB$G_COMP_CODE],
    3	    202 			file );
    3	    203 
    3	    204 !
    3	    205 ! Close the file if necessary.
    3	    206 !
    3	    207 
    3	    208 	IF .file[IOB$V_OPEN]				! If the file was opened,
    3	    209 	THEN						!
    3	    210 	    $XPO_CLOSE( IOB = file );			! close it.
    3	    211 
    3	    212 	END;
    2	    213 
    2	    214 !
    2	    215 ! Send a test completion message.
    2	    216 !
    2	    217 
    2	    218     $XPO_PUT( IOB = terminal,				! Tell the user that the testing is done.
P   2	    219 	STRING = skip('XPORT File-spec Resolution Testing Complete') )
    3	    220     END;
    1	    221 END
    1	    222 ELUDOM

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 6
00.09                                                           19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

				      .psect $CODE$, CON, LCL, SHR, EXE, NOWRT, NOVEC
				      .proc   TEST_FILE_SPEC
				      .align 32
				      .global  TEST_FILE_SPEC
			TEST_FILE_SPEC:											   // 000083
			   { .mii 
002C04BA1A40     0000		      alloc   r105 = rspfs, 0, 75, 5, 0
012000100A00     0001		      add     r40 = @ltoff(TERMINAL), r1						   // 000146
012000100A80     0002		      add     r42 = @ltoff($IOB$FILE_SPEC), r1
			   }
			   { .mmi 
012000100600     0010		      add     r24 = @ltoff(@fptr(XPO$FAILURE)), 
					      r1
012000C00200     0011		      addl    r8 = 196608, r0
0119F8CC0300     0012		      adds    r12 = -32, r12								   // 000083
			   }
			   { .mlx 
012000002A40     0020		      mov     r41 = 1									   // 000146
800000000008     0021		      movl    r17 = 34471936 ;;								   // 000134
0180070008
			   }
			   { .mmi 
0080C2800A00     0030		      ld8     r40 = TERMINAL			// r40 = [r40]				   // 000146
0080C2A00A80     0031		      ld8     r42 = $IOB$FILE_SPEC		// r42 = [r42]
010800C20580     0032		      adds    r22 = 16, r12								   // 000138
			   }
			   { .mii 
010800C30500     0040		      adds    r20 = 24, r12								   // 000136
010800C40480     0041		      adds    r18 = 32, r12								   // 000134
010800C285C0     0042		      adds    r23 = 20, r12								   // 000138
			   }
			   { .mmi 
0080C1800600     0050		      ld8     r24 = XPO$FAILURE			// r24 = [r24]				   // 000146
010800C38540     0051		      adds    r21 = 28, r12								   // 000136
010800C484C0     0052		      adds    r19 = 36, r12 ;;								   // 000134
			   }
			   { .mmi 
008C81622000     0060		      st4     [r22] = r17								   // 000138
008C81422000     0061		      st4     [r20] = r17								   // 000136
010802858A00     0062		      adds    r40 = 44, r40								   // 000146
			   }
			   { .mii 
008C81222000     0070		      st4     [r18] = r17								   // 000134
012000006640     0071		      mov     r25 = 3									   // 000146
0000B1801B40     0072		      sxt4    r109 = r24 ;;
			   }
			   { .mii 
008C81700000     0080		      st4     [r23] = r0								   // 000138
000188001A00     0081		      mov     r104 = br0								   // 000083
0000B0001B00     0082		      sxt4    r108 = r0									   // 000146
			   }
			   { .mmi 
010800101A80     0090		      mov     r106 = r1									   // 000083
0080828000C0     0091		      ld4     r3 = [r40]								   // 000146
01200000EB00     0092		      mov     r44 = 7									   // 000149
			   }
			   { .mii 

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 7
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

008C81500000     00A0		      st4     [r21] = r0								   // 000136
012000068C00     00A1		      mov     r48 = 52									   // 000165
01200000D040     00A2		      mov     r65 = 6 ;;								   // 000158
			   }
			   { .mii 
008C81300000     00B0		      st4     [r19] = r0								   // 000134
012000004FC0     00B1		      mov     r63 = 2									   // 000210
0100708060C0     00B2		      or      r3 = r3, r8 ;;								   // 000146
			   }
			   { .mmi 
008C82806000     00C0		      st4     [r40] = r3 ;;
00BC0A853600     00C1		      st1     [r40] = r41, -40
000008000000     00C2		      nop.i   0 ;;
			   }
			   { .mii 
00BC8A855F00     00D0		      st4     [r40] = r42, -4
010802A10AC0     00D1		      adds    r43 = 8, r42 ;;								   // 000149
0000B2801AC0     00D2		      sxt4    r107 = r40								   // 000146
			   }
			   { .mfb 
000008000000     00E0		      nop.m   0
000008000000     00E1		      nop.f   0
00A000001000     00E2		      br.call.sptk.many br0 = XPO$OPEN
			   }
			   { .mii 
010806A00040     00F0		      mov     r1 = r106
010802858A00     00F1		      adds    r40 = 44, r40								   // 000149
012000006640     00F2		      mov     r25 = 3 ;;
			   }
			   { .mib 
012000100BC0     0100		      add     r47 = @ltoff(@fptr(XPO$FAILURE)), 
					      r1
0000B0001B00     0101		      sxt4    r108 = r0
004000000000     0102		      nop.b   0 ;;
			   }
			   { .mmi 
00AC02858600     0110		      st1     [r40] = r44, 24
0080C2F00BC0     0111		      ld8     r47 = XPO$FAILURE			// r47 = [r47]
000008000000     0112		      nop.i   0 ;;
			   }
			   { .mii 
00BC8A856F00     0120		      st4     [r40] = r43, -68
0000B2F01B40     0121		      sxt4    r109 = r47 ;;
0000B2801AC0     0122		      sxt4    r107 = r40
			   }
			   { .mfb 
010003051000     0130		      add     r64 = r40, r48								   // 000165
000008000000     0131		      nop.f   0
00A000001000     0132		      br.call.sptk.many br0 = XPO$PUT							   // 000149
			   }
			   { .mmi 
010806A00040     0140		      mov     r1 = r106 ;;
012000100F40     0141		      add     r61 = @ltoff(@fptr(XPO$FAILURE)), 					   // 000158
					      r1
012000100EC0     0142		      add     r59 = @ltoff(@fptr(STR$FAILURE)), 					   // 000165
					      r1
			   }

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 8
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

			   { .mii 
012000100E40     0150		      add     r57 = @ltoff(@fptr(XPO$FAILURE)), 					   // 000168
					      r1
012000100DC0     0151		      add     r55 = @ltoff(@fptr(STR$FAILURE)), 					   // 000175
					      r1
012000100D40     0152		      add     r53 = @ltoff(@fptr(XPO$FAILURE)), 					   // 000178
					      r1 ;;
			   }
			   { .mii 
012000100CC0     0160		      add     r51 = @ltoff(@fptr(STR$FAILURE)), 					   // 000185
					      r1
012000100C40     0161		      add     r49 = @ltoff(@fptr(XPO$FAILURE)), 					   // 000210
					      r1
000008000000     0162		      nop.i   0
			   }
			   { .mmb 
0080C3D00F80     0170		      ld8     r62 = XPO$FAILURE			// r62 = [r61]				   // 000158
0080C3B00F00     0171		      ld8     r60 = STR$FAILURE			// r60 = [r59]				   // 000165
004000000000     0172		      nop.b   0 ;;
			   }
			   { .mmi 
0080C3900E80     0180		      ld8     r58 = XPO$FAILURE			// r58 = [r57]				   // 000168
0080C3700E00     0181		      ld8     r56 = STR$FAILURE			// r56 = [r55]				   // 000175
000008000000     0182		      nop.i   0
			   }
			   { .mmi 
0080C3500D80     0190		      ld8     r54 = XPO$FAILURE			// r54 = [r53]				   // 000178
0080C3300D00     0191		      ld8     r52 = STR$FAILURE			// r52 = [r51]				   // 000185
000008000000     0192		      nop.i   0
			   }
			   { .mfi 
0080C3100C80     01A0		      ld8     r50 = XPO$FAILURE			// r50 = [r49]				   // 000210
000008000000     01A1		      nop.f   0
000008000000     01A2		      nop.i   0 ;;
			   }
	         01B0	L$3:												   // 000158
			   { .mmi 
010802848A00     01B0		      adds    r40 = 36, r40 ;;
00B08A8B90C0     01B1		      ld4     r67 = [r40], -36
000008000000     01B2		      nop.i   0 ;;
			   }
			   { .mfb 
01C4043001C0     01C0		      cmp4.eq pr7, pr0 = r0, r67
000008000000     01C1		      nop.f   0
008600006007     01C2	       (pr7)  br.cond.dpnt.few L$5
			   }
			   { .mib 
012000002640     01D0		      mov     r25 = 1
0000B4301AC0     01D1		      sxt4    r107 = r67
00A000001000     01D2		      br.call.sptk.many br0 = XST$FREE_TEMP ;;
			   }
			   { .mfi 
010806A00040     01E0		      mov     r1 = r106
000008000000     01E1		      nop.f   0
000008000000     01E2		      nop.i   0
			   }
	         01F0	L$5:

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 9
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

			   { .mii 
010802858A00     01F0		      adds    r40 = 44, r40
010802A21100     01F1		      adds    r68 = 16, r42
012000006640     01F2		      mov     r25 = 3 ;;
			   }
			   { .mii 
00BC0A883E00     0200		      st1     [r40] = r65, -8
0000B3E01B40     0201		      sxt4    r109 = r62
0000B0001B00     0202		      sxt4    r108 = r0 ;;
			   }
			   { .mmi 
00BC8A889700     0210		      st4     [r40] = r68, -36 ;;
000008000000     0211		      nop.m   0
0000B2801AC0     0212		      sxt4    r107 = r40
			   }
			   { .mfb 
000008000000     0220		      nop.m   0
000008000000     0221		      nop.f   0
00A000001000     0222		      br.call.sptk.many br0 = XPO$GET
			   }
			   { .mib 
010806A00040     0230		      mov     r1 = r106
00A0308001C0     0231		      tbit.z  pr7, pr6 = r8, 0
008600078007     0232	       (pr7)  br.cond.dpnt.few L$7								   // 000157
			   }
			   { .mmi 
010802868A00     0240		      adds    r40 = 52, r40 ;;								   // 000162
00B04A8991C0     0241		      ld2     r71 = [r40], -52
000008000000     0242		      nop.i   0 ;;
			   }
			   { .mfb 
01C404700240     0250		      cmp4.eq pr9, pr0 = r0, r71
000008000000     0251		      nop.f   0
00860000C009     0252	       (pr9)  br.cond.dpnt.few L$9
			   }
			   { .mii 
010800C41200     0260		      adds    r72 = 32, r12								   // 000165
01200000A640     0261		      mov     r25 = 5
0000B3C01BC0     0262		      sxt4    r111 = r60 ;;
			   }
			   { .mii 
000008000000     0270		      nop.m   0
0000B0001B80     0271		      sxt4    r110 = r0
0000B4801B40     0272		      sxt4    r109 = r72
			   }
			   { .mii 
000008000000     0280		      nop.m   0
0000B4001B00     0281		      sxt4    r108 = r64
0000B0001AC0     0282		      sxt4    r107 = r0
			   }
			   { .mfb 
000008000000     0290		      nop.m   0
000008000000     0291		      nop.f   0
00A000001000     0292		      br.call.sptk.many br0 = XST$COPY
			   }
			   { .mfi 
010806A00040     02A0		      mov     r1 = r106

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 10
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

000008000000     02A1		      nop.f   0
000008000000     02A2		      nop.i   0
			   }
	         02B0	L$9:												   // 000168
			   { .mmi 
010802848A00     02B0		      adds    r40 = 36, r40 ;;
00B08A8B9280     02B1		      ld4     r74 = [r40], -36
000008000000     02B2		      nop.i   0 ;;
			   }
			   { .mfb 
01C404A001C0     02C0		      cmp4.eq pr7, pr0 = r0, r74
000008000000     02C1		      nop.f   0
008600006007     02C2	       (pr7)  br.cond.dpnt.few L$11
			   }
			   { .mib 
012000002640     02D0		      mov     r25 = 1
0000B4A01AC0     02D1		      sxt4    r107 = r74
00A000001000     02D2		      br.call.sptk.many br0 = XST$FREE_TEMP ;;
			   }
			   { .mfi 
010806A00040     02E0		      mov     r1 = r106
000008000000     02E1		      nop.f   0
000008000000     02E2		      nop.i   0
			   }
	         02F0	L$11:
			   { .mii 
010802858A00     02F0		      adds    r40 = 44, r40
010802A312C0     02F1		      adds    r75 = 24, r42
012000006640     02F2		      mov     r25 = 3 ;;
			   }
			   { .mii 
00BC0A883E00     0300		      st1     [r40] = r65, -8
0000B3A01B40     0301		      sxt4    r109 = r58
0000B0001B00     0302		      sxt4    r108 = r0 ;;
			   }
			   { .mmi 
00BC8A897700     0310		      st4     [r40] = r75, -36 ;;
000008000000     0311		      nop.m   0
0000B2801AC0     0312		      sxt4    r107 = r40
			   }
			   { .mfb 
000008000000     0320		      nop.m   0
000008000000     0321		      nop.f   0
00A000001000     0322		      br.call.sptk.many br0 = XPO$GET
			   }
			   { .mib 
010806A00040     0330		      mov     r1 = r106
00A0308001C0     0331		      tbit.z  pr7, pr6 = r8, 0
008600058007     0332	       (pr7)  br.cond.dpnt.few L$7								   // 000167
			   }
			   { .mmi 
010802868A00     0340		      adds    r40 = 52, r40 ;;								   // 000172
00B04A899380     0341		      ld2     r78 = [r40], -52
000008000000     0342		      nop.i   0 ;;
			   }
			   { .mfb 
01C404E00240     0350		      cmp4.eq pr9, pr0 = r0, r78

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 11
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

000008000000     0351		      nop.f   0
00860000C009     0352	       (pr9)  br.cond.dpnt.few L$14
			   }
			   { .mii 
010800C313C0     0360		      adds    r79 = 24, r12								   // 000175
01200000A640     0361		      mov     r25 = 5
0000B3801BC0     0362		      sxt4    r111 = r56 ;;
			   }
			   { .mii 
000008000000     0370		      nop.m   0
0000B0001B80     0371		      sxt4    r110 = r0
0000B4F01B40     0372		      sxt4    r109 = r79
			   }
			   { .mii 
000008000000     0380		      nop.m   0
0000B4001B00     0381		      sxt4    r108 = r64
0000B0001AC0     0382		      sxt4    r107 = r0
			   }
			   { .mfb 
000008000000     0390		      nop.m   0
000008000000     0391		      nop.f   0
00A000001000     0392		      br.call.sptk.many br0 = XST$COPY
			   }
			   { .mfi 
010806A00040     03A0		      mov     r1 = r106
000008000000     03A1		      nop.f   0
000008000000     03A2		      nop.i   0
			   }
	         03B0	L$14:												   // 000178
			   { .mmi 
010802848A00     03B0		      adds    r40 = 36, r40 ;;
00B08A8B9440     03B1		      ld4     r81 = [r40], -36
000008000000     03B2		      nop.i   0 ;;
			   }
			   { .mfb 
01C4051001C0     03C0		      cmp4.eq pr7, pr0 = r0, r81
000008000000     03C1		      nop.f   0
008600006007     03C2	       (pr7)  br.cond.dpnt.few L$16
			   }
			   { .mib 
012000002640     03D0		      mov     r25 = 1
0000B5101AC0     03D1		      sxt4    r107 = r81
00A000001000     03D2		      br.call.sptk.many br0 = XST$FREE_TEMP ;;
			   }
			   { .mfi 
010806A00040     03E0		      mov     r1 = r106
000008000000     03E1		      nop.f   0
000008000000     03E2		      nop.i   0
			   }
	         03F0	L$16:
			   { .mii 
010802858A00     03F0		      adds    r40 = 44, r40
010802A41480     03F1		      adds    r82 = 32, r42
012000006640     03F2		      mov     r25 = 3 ;;
			   }
			   { .mii 
00BC0A883E00     0400		      st1     [r40] = r65, -8

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 12
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

0000B3601B40     0401		      sxt4    r109 = r54
0000B0001B00     0402		      sxt4    r108 = r0 ;;
			   }
			   { .mmi 
00BC8A8A5700     0410		      st4     [r40] = r82, -36 ;;
000008000000     0411		      nop.m   0
0000B2801AC0     0412		      sxt4    r107 = r40
			   }
			   { .mfb 
000008000000     0420		      nop.m   0
000008000000     0421		      nop.f   0
00A000001000     0422		      br.call.sptk.many br0 = XPO$GET
			   }
			   { .mib 
010806A00040     0430		      mov     r1 = r106
00A0308001C0     0431		      tbit.z  pr7, pr6 = r8, 0
008600038007     0432	       (pr7)  br.cond.dpnt.few L$7								   // 000177
			   }
			   { .mmi 
010802868A00     0440		      adds    r40 = 52, r40 ;;								   // 000182
00B04A899540     0441		      ld2     r85 = [r40], -52
000008000000     0442		      nop.i   0 ;;
			   }
			   { .mfb 
01C405500240     0450		      cmp4.eq pr9, pr0 = r0, r85
000008000000     0451		      nop.f   0
00860000C009     0452	       (pr9)  br.cond.dpnt.few L$19
			   }
			   { .mii 
010800C21580     0460		      adds    r86 = 16, r12								   // 000185
01200000A640     0461		      mov     r25 = 5
0000B3401BC0     0462		      sxt4    r111 = r52 ;;
			   }
			   { .mii 
000008000000     0470		      nop.m   0
0000B0001B80     0471		      sxt4    r110 = r0
0000B5601B40     0472		      sxt4    r109 = r86
			   }
			   { .mii 
000008000000     0480		      nop.m   0
0000B4001B00     0481		      sxt4    r108 = r64
0000B0001AC0     0482		      sxt4    r107 = r0
			   }
			   { .mfb 
000008000000     0490		      nop.m   0
000008000000     0491		      nop.f   0
00A000001000     0492		      br.call.sptk.many br0 = XST$COPY
			   }
			   { .mfi 
010806A00040     04A0		      mov     r1 = r106
000008000000     04A1		      nop.f   0
000008000000     04A2		      nop.i   0
			   }
	         04B0	L$19:												   // 000196
			   { .mii 
0108128415C0     04B0		      adds    r87 = 288, r40
012000401600     04B1		      addl    r88 = 65536, r0

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 13
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

010812841680     04B2		      adds    r90 = 288, r40 ;;
			   }
			   { .mii 
0080857015C0     04C0		      ld4     r87 = [r87]
0108128416C0     04C1		      adds    r91 = 288, r40
01080A8F1740     04C2		      adds    r93 = 248, r40
			   }
			   { .mmi 
010800C41700     04D0		      adds    r92 = 32, r12
01080A8F97C0     04D1		      adds    r95 = 252, r40
010800C31780     04D2		      adds    r94 = 24, r12 ;;
			   }
			   { .mii 
010812801840     04E0		      adds    r97 = 256, r40
010800C21800     04E1		      adds    r96 = 16, r12
0100758AF5C0     04E2		      or      r87 = r87, r88
			   }
			   { .mmi 
01080A8E9640     04F0		      adds    r89 = 244, r40
012000006640     04F1		      mov     r25 = 3
0000B0001B40     04F2		      sxt4    r109 = r0 ;;
			   }
			   { .mmi 
008C85AAE000     0500		      st4     [r90] = r87
008C05B52000     0501		      st1     [r91] = r41
0000B0001B00     0502		      sxt4    r108 = r0
			   }
			   { .mmi 
008C85DB8000     0510		      st4     [r93] = r92
008C85FBC000     0511		      st4     [r95] = r94
0000B5901AC0     0512		      sxt4    r107 = r89
			   }
			   { .mfb 
008C861C0000     0520		      st4     [r97] = r96
000008000000     0521		      nop.f   0
00A000001000     0522		      br.call.sptk.many br0 = XPO$OPEN
			   }
			   { .mib 
010806A00040     0530		      mov     r1 = r106
00A0308001C0     0531		      tbit.z  pr7, pr6 = r8, 0
008600004007     0532	       (pr7)  br.cond.dpnt.few L$21								   // 000191
			   }
			   { .mmi 
01081A899880     0540		      adds    r98 = 460, r40 ;;								   // 000198
008C8627E000     0541		      st4     [r98] = r63
000008000000     0542		      nop.i   0
			   }
	         0550	L$21:												   // 000191
			   { .mii 
01081A899B00     0550		      adds    r108 = 460, r40								   // 000200
0108128498C0     0551		      adds    r99 = 292, r40								   // 000208
01080A8E9640     0552		      adds    r89 = 244, r40 ;;								   // 000200
			   }
			   { .mii 
008086C01B00     0560		      ld4     r108 = [r108]
012000006640     0561		      mov     r25 = 3
012000003AC0     0562		      mov     r107 = 1 ;;

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 14
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

			   }
			   { .mii 
000008000000     0570		      nop.m   0
0000B5901B40     0571		      sxt4    r109 = r89
0000B6C01B00     0572		      sxt4    r108 = r108
			   }
			   { .mfb 
000008000000     0580		      nop.m   0
000008000000     0581		      nop.f   0
00A000001000     0582		      br.call.sptk.many br0 = XPO$IO_FAILURE
			   }
			   { .mii 
0080863018C0     0590		      ld4     r99 = [r99]								   // 000208
010806A00040     0591		      mov     r1 = r106 ;;								   // 000200
00A4063418C0     0592		      extr.u  r99 = r99, 16, 1 ;;							   // 000208
			   }
			   { .mib 
000008000000     05A0		      nop.m   0
00A0363001C0     05A1		      tbit.z  pr7, pr6 = r99, 0
0095FFF82007     05A2	       (pr7)  br.cond.dptk.few L$3
			   }
			   { .mii 
010812841900     05B0		      adds    r100 = 288, r40								   // 000210
01080A8E9640     05B1		      adds    r89 = 244, r40
012000006640     05B2		      mov     r25 = 3 ;;
			   }
			   { .mii 
008C0647E000     05C0		      st1     [r100] = r63
0000B3201B40     05C1		      sxt4    r109 = r50
0000B0001B00     05C2		      sxt4    r108 = r0
			   }
			   { .mib 
000008000000     05D0		      nop.m   0
0000B5901AC0     05D1		      sxt4    r107 = r89
00A000001000     05D2		      br.call.sptk.many br0 = XPO$CLOSE
			   }
			   { .mfb 
010806A00040     05E0		      mov     r1 = r106
000008000000     05E1		      nop.f   0
0091FFF7A000     05E2		      br.sptk.few L$3 ;;
			   }
	         05F0	L$7:												   // 000219
			   { .mii 
0120001019C0     05F0		      add     r103 = @ltoff(@fptr(XPO$FAILURE)), 
					      r1
010802A50A80     05F1		      adds    r42 = 40, r42
010802858A00     05F2		      adds    r40 = 44, r40
			   }
			   { .mib 
012000006640     0600		      mov     r25 = 3
0000B0001B00     0601		      sxt4    r108 = r0
004000000000     0602		      nop.b   0 ;;
			   }
			   { .mmi 
0080C67019C0     0610		      ld8     r103 = XPO$FAILURE		// r103 = [r103]
00AC02858600     0611		      st1     [r40] = r44, 24
000008000000     0612		      nop.i   0 ;;

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 15
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

			   }
			   { .mii 
00BC8A854F00     0620		      st4     [r40] = r42, -68
0000B6701B40     0621		      sxt4    r109 = r103 ;;
0000B2801AC0     0622		      sxt4    r107 = r40
			   }
			   { .mfb 
000008000000     0630		      nop.m   0
000008000000     0631		      nop.f   0
00A000001000     0632		      br.call.sptk.many br0 = XPO$PUT ;;
			   }
			   { .mii 
010806A00040     0640		      mov     r1 = r106
0000B0800200     0641		      sxt4    r8 = r8									   // 000220
0001540D2000     0642		      mov.i   rspfs = r105 ;;
			   }
			   { .mib 
010800C40300     0650		      adds    r12 = 32, r12
000E001D0000     0651		      mov     br0 = r104
000108001100     0652		      br.ret.sptk.many br0 ;;
			   }
				      .endp   TEST_FILE_SPEC

Routine Size: 1632 bytes,    Routine Base: $CODE$ + 0000

				       .psect $OWN$, CON, LCL, NOSHR, NOEXE, WRT, NOVEC
				      .lcomm  IOB$, 244, 16
				      .lcomm  $STR$STRING, 244, 16
				      .lcomm  IOB$, 244, 16
				      .lcomm  $IOB$FILE_SPEC, 8, 8
				      .lcomm  $IOB$OUTPUT, 8, 8
				      .lcomm  $IOB$PROMPT, 8, 8
				      .lcomm  $IOB$PROMPT, 8, 8
				      .lcomm  $IOB$PROMPT, 8, 8
				      .lcomm  $IOB$OUTPUT, 8, 8
				      .lcomm  P.AAA, 9, 16
				      .lcomm  fill$$1, 3, 4
				      .lcomm  P.AAB, 32, 16
				      .lcomm  P.AAC, 26, 16
				      .lcomm  fill$$2, 2, 2
				      .lcomm  P.AAD, 28, 16
				      .lcomm  P.AAE, 28, 16
				      .lcomm  P.AAF, 44, 16
				      .psect $OWN$, CON, LCL, NOSHR, NOEXE, WRT, NOVEC
			$IOB$FILE_SPEC:
    0009         01E8		      data2   0x9 // data2 9
      0E         01EA		      data1   0xE // data1 14
      01         01EB		      data1   0x1 // data1 1
00000000         01EC		      data4   P.AAA
			$IOB$OUTPUT:
    0020         01F0		      data2   0x20 // data2 32
      0E         01F2		      data1   0xE // data1 14
      01         01F3		      data1   0x1 // data1 1
00000000         01F4		      data4   P.AAB
			$IOB$PROMPT:
    001A         01F8		      data2   0x1A // data2 26
      0E         01FA		      data1   0xE // data1 14

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 16
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

      01         01FB		      data1   0x1 // data1 1
00000000         01FC		      data4   P.AAC
			$IOB$PROMPT:
    001C         0200		      data2   0x1C // data2 28
      0E         0202		      data1   0xE // data1 14
      01         0203		      data1   0x1 // data1 1
00000000         0204		      data4   P.AAD
			$IOB$PROMPT:
    001C         0208		      data2   0x1C // data2 28
      0E         020A		      data1   0xE // data1 14
      01         020B		      data1   0x1 // data1 1
00000000         020C		      data4   P.AAE
			$IOB$OUTPUT:
    002C         0210		      data2   0x2C // data2 44
      0E         0212		      data1   0xE // data1 14
      01         0213		      data1   0x1 // data1 1
00000000         0214		      data4   P.AAF
				      .psect $PLIT$, CON, LCL, NOSHR, NOEXE, NOWRT, NOVEC
			P.AAA:
24535953         0000		      string  "SYS$INPUT"
55504E49         0004
      54         0008

			P.AAB:
4F50580A         000C		      string  "\X0AXPORT File-spec Resolution Test"
46205452         0010
2D656C69         0014
63657073         0018
73655220         001C
74756C6F         0020
206E6F69         0024
74736554         0028

			P.AAC:
6573550A         002C		      string  "\X0AUser file specification? "
69662072         0030
7320656C         0034
69636570         0038
61636966         003C
6E6F6974         0040
    203F         0044

			P.AAD:
61666544         0048		      string  "Default file specification? "
20746C75         004C
656C6966         0050
65707320         0054
69666963         0058
69746163         005C
203F6E6F         0060

			P.AAE:
616C6552         0064		      string  "Related file specification? "
20646574         0068
656C6966         006C
65707320         0070
69666963         0074

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 17
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

69746163         0078
203F6E6F         007C

			P.AAF:
4F50580A         0080		      string  "\X0AXPORT File-spec Resolution Testing Complete"
46205452         0084
2D656C69         0088
63657073         008C
73655220         0090
74756C6F         0094
206E6F69         0098
74736554         009C
20676E69         00A0
706D6F43         00A4
6574656C         00A8

				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   XPO$OPEN, @function 
				      .global  XPO$OPEN
				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   XPO$PUT, @function 
				      .global  XPO$PUT
				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   STR$FAILURE, @function 
				      .global  STR$FAILURE
				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   STR$FAILURE, @function 
				      .global  STR$FAILURE
				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   STR$FAILURE, @function 
				      .global  STR$FAILURE
				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   XST$FREE_TEMP, @function 
				      .global  XST$FREE_TEMP
				      .section .data
				      .type   XPO$GET, @function 
				      .global  XPO$GET
				      .section .data
				      .type   XST$COPY, @function 

XTESTF                          Machine Code Listing             4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 18
00.09                           TEST_FILE_SPEC                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

				      .global  XST$COPY
				      .section .data
				      .type   XST$FREE_TEMP, @function 
				      .global  XST$FREE_TEMP
				      .section .data
				      .type   XPO$GET, @function 
				      .global  XPO$GET
				      .section .data
				      .type   XST$COPY, @function 
				      .global  XST$COPY
				      .section .data
				      .type   XST$FREE_TEMP, @function 
				      .global  XST$FREE_TEMP
				      .section .data
				      .type   XPO$GET, @function 
				      .global  XPO$GET
				      .section .data
				      .type   XST$COPY, @function 
				      .global  XST$COPY
				      .section .data
				      .type   XPO$OPEN, @function 
				      .global  XPO$OPEN
				      .section .data
				      .type   XPO$IO_FAILURE, @function 
				      .global  XPO$IO_FAILURE
				      .section .data
				      .type   XPO$CLOSE, @function 
				      .global  XPO$CLOSE
				      .section .data
				      .type   XPO$FAILURE, @function 
				      .global  XPO$FAILURE
				      .section .data
				      .type   XPO$PUT, @function 
				      .global  XPO$PUT


;				Library Statistics
;
;					     -------- Symbols --------	    Pages
;	File				     Total    Loaded   Percent      Mapped
;
;  DISK$NORMS_OWN:[LASTOVICA.XPORT.VMSGEN]XPORT.L32;14
;					       590       129        21       270




                                Source Listing                   4-FEB-2004 11:02:13  BLISS-32I T1.1-053                Page 19
                                Source Listing                  19-MAR-2002 10:12:33  [LASTOVICA.XPORT.VMSGEN]XTESTF.BLI;1

COMMAND LINE:

BLISSXTESTF/LIST/DEBUG
