XPORT File Rename Test 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 1 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 0 1 MODULE XTESTR ( IDENT = 'X00.08', %TITLE 'XPORT File Rename Test' 0 2 MAIN = TEST_RENAME ! Entry point of main program 0 3 %BLISS32( ,ADDRESSING_MODE( EXTERNAL=LONG_RELATIVE ) ) 0 4 ) = 0 5 BEGIN 1 6 1 7 ! 1 8 ! COPYRIGHT (c) 1979 BY 1 9 ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. 1 10 ! 1 11 ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED 1 12 ! ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE 1 13 ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER 1 14 ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY 1 15 ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY 1 16 ! TRANSFERRED. 1 17 ! 1 18 ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE 1 19 ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT 1 20 ! CORPORATION. 1 21 ! 1 22 ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS 1 23 ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. 1 24 ! 1 25 1 26 !++ 1 27 ! 1 28 ! FACILITY: BLISS Library 1 29 ! 1 30 ! ABSTRACT: 1 31 ! 1 32 ! This module tests the XPORT file rename facility. 1 33 ! 1 34 ! ENVIRONMENT: User Mode 1 35 ! 1 36 ! AUTHOR: Ward Clark, CREATION DATE: 20 February 1979 1 37 ! 1 38 !-- XTESTR XPORT File Rename Test 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 2 X00.08 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 1 40 ! 1 41 ! TABLE OF CONTENTS: 1 42 ! 1 43 1 44 FORWARD ROUTINE 1 45 TEST_RENAME; ! Principal testing routine 1 46 1 47 ! 1 48 ! INCLUDE FILES: 1 49 ! 1 50 LIBRARY 'XPORT' ; ! XPORT control block and macro definitions 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 tty_input : $XPO_IOB(), ! IOB for input from terminal 1 74 1 75 tty_output : $XPO_IOB(), ! IOB for output to terminal 1 76 1 77 file : $XPO_IOB(); ! IOB for the file to be renamed 1 78 1 79 ! 1 80 ! EXTERNAL REFERENCES: 1 81 ! XTESTR XPORT File Rename Test 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 3 X00.08 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 1 83 GLOBAL ROUTINE TEST_RENAME = 1 84 1 85 !++ 1 86 ! 1 87 ! FUNCTIONAL DESCRIPTION: 1 88 ! 1 89 ! This module tests the XPORT file rename facility. 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 ! XPO$_NORMAL - successful completion 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 file_spec : $STR_DESCRIPTOR( CLASS=DYNAMIC ), ! Current file-spec descriptor 2 117 new_spec : $STR_DESCRIPTOR( CLASS=DYNAMIC ); ! New file-spec descriptor 2 118 2 119 %IF %VARIANT NEQ 0 %THEN U 2 120 ! U 2 121 ! Initialize the IOB's. U 2 122 ! U 2 123 U 2 124 $XPO_IOB_INIT( IOB = tty_input ); U 2 125 $XPO_IOB_INIT( IOB = tty_output ); U 2 126 $XPO_IOB_INIT( IOB = file ); U 2 127 %FI 2 128 2 129 ! 2 130 ! Initialize the local string descriptors. 2 131 ! 2 132 2 133 $STR_DESC_INIT( DESCRIPTOR = file_spec, P 2 134 CLASS = DYNAMIC ); 2 135 $STR_DESC_INIT( DESCRIPTOR = new_spec, P 2 136 CLASS = DYNAMIC ); 2 137 2 138 ! 2 139 ! Open the user's terminal for output and send the user a greeting message. XTESTR XPORT File Rename Test 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 4 X00.08 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 2 140 ! 2 141 2 142 $XPO_OPEN( IOB = tty_output, ! Open the user's terminal: P 2 143 FILE_SPEC = $XPO_OUTPUT, ! standard output file P 2 144 OPTIONS = OUTPUT ); ! open for output 2 145 2 146 $XPO_PUT( IOB = tty_output, ! Send the user a greeting message. P 2 147 STRING = skip('XPORT File Rename Test') ); 2 148 2 149 ! 2 150 ! Open the user's terminal for input. 2 151 ! 2 152 2 153 $XPO_OPEN( IOB = tty_input, ! Open the user's terminal: P 2 154 FILE_SPEC = $XPO_INPUT, ! standard input file P 2 155 OPTIONS = INPUT ); ! open for input 2 156 2 157 ! 2 158 ! Request the name of the file to be renamed. 2 159 ! 2 160 2 161 WHILE 1 DO ! Keep asking for a new file-spec. 2 162 BEGIN 3 163 IF NOT $XPO_GET( IOB = tty_input, ! Read a file name from the terminal. P 3 164 PROMPT = skip('Current file name? ') ) 4 165 THEN ! If terminal end-of-file (^Z) is reached, 3 166 EXITLOOP; ! terminate rename testing. 3 167 3 168 IF .tty_input[IOB$H_STRING] NEQ 0 ! If a file specification was specified, 3 169 THEN ! 3 170 $STR_COPY( ! save it for later. P 3 171 STRING = tty_input[IOB$T_STRING], P 3 172 TARGET = file_spec ); 3 173 3 174 ! 3 175 ! Request the new file name. 3 176 ! 3 177 3 178 IF NOT $XPO_GET( IOB = tty_input, ! Read a file name from the terminal. P 3 179 PROMPT = ( 'New file name? ' ) ) 4 180 THEN ! If terminal end-of-file (^Z) is reached, 3 181 EXITLOOP; ! terminate rename testing. 3 182 3 183 IF .tty_input[IOB$H_STRING] NEQ 0 ! If a file specification was specified, 3 184 THEN ! 3 185 $STR_COPY( ! save it for later. P 3 186 STRING = tty_input[IOB$T_STRING], P 3 187 TARGET = new_spec ); 3 188 3 189 $XPO_RENAME( IOB = file, ! Rename the specified file. P 3 190 FILE_SPEC = file_spec, P 3 191 NEW_SPEC = new_spec, P 3 192 NEW_RELATED = file_spec, P 3 193 OPTIONS = MAX_VERSION, P 3 194 FAILURE = XPO$IO_FAILURE ); 3 195 END; 2 196 XTESTR XPORT File Rename Test 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 5 X00.08 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 2 197 ! 2 198 ! Send the user a completion message. 2 199 ! 2 200 2 201 $XPO_PUT( IOB = tty_output, ! Send the user a blank line followed by a message. P 2 202 STRING = skip('XPORT File Rename Test Complete') ); 2 203 2 204 ! 2 205 ! Close the terminal input and output files. 2 206 ! 2 207 2 208 $XPO_CLOSE( IOB = tty_input ); ! Close the terminal input file. 2 209 2 210 $XPO_CLOSE( IOB = tty_output ); ! Close the terminal output file. 2 211 2 212 ! 2 213 ! Terminate XPORT I/O testing. 2 214 ! 2 215 2 216 RETURN XPO$_NORMAL; ! Exit with a normal completion code. 2 217 END; 1 218 END 1 219 ELUDOM XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 6 X00.08 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 .psect $CODE$, CON, LCL, SHR, EXE, NOWRT, NOVEC .proc TEST_RENAME .align 32 .global TEST_RENAME TEST_RENAME: // 000083 { .mii 002C050ABB80 0000 alloc r110 = rspfs, 0, 80, 5, 0 012000100A00 0001 add r40 = @ltoff(TTY_OUTPUT), r1 // 000144 012000100A80 0002 add r42 = @ltoff($IOB$FILE_SPEC), r1 } { .mmi 012000100580 0010 add r22 = @ltoff(@fptr(XPO$FAILURE)), r1 012000800200 0011 addl r8 = 131072, r0 0119E8CE0300 0012 adds r12 = -272, r12 // 000083 } { .mlx 012000002A40 0020 mov r41 = 1 // 000144 800000000008 0021 movl r17 = 34471936 ;; // 000134 0180070008 } { .mmi 0080C2800A00 0030 ld8 r40 = TTY_OUTPUT // r40 = [r40] // 000144 0080C2A00A80 0031 ld8 r42 = $IOB$FILE_SPEC // r42 = [r42] 010800C20500 0032 adds r20 = 16, r12 // 000136 } { .mmi 010800C30480 0040 adds r18 = 24, r12 // 000134 0080C1600580 0041 ld8 r22 = XPO$FAILURE // r22 = [r22] // 000144 010800C28540 0042 adds r21 = 20, r12 ;; // 000136 } { .mii 010800C384C0 0050 adds r19 = 28, r12 // 000134 000188001B40 0051 mov r109 = br0 // 000083 010800101BC0 0052 mov r111 = r1 } { .mmi 008C81422000 0060 st4 [r20] = r17 // 000136 010802858A00 0061 adds r40 = 44, r40 // 000144 012000006640 0062 mov r25 = 3 } { .mii 008C81222000 0070 st4 [r18] = r17 // 000134 0000B1601C80 0071 sxt4 r114 = r22 // 000144 0000B0001C40 0072 sxt4 r113 = r0 ;; } { .mmi 008C81500000 0080 st4 [r21] = r0 // 000136 008C81300000 0081 st4 [r19] = r0 // 000134 01200000EB00 0082 mov r44 = 7 // 000147 } { .mii 0080828000C0 0090 ld4 r3 = [r40] // 000144 012000400C40 0091 addl r49 = 65536, r0 // 000155 01200000D180 0092 mov r70 = 6 // 000164 } { .mib XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 7 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 01202001D0C0 00A0 mov r67 = 526 // 000194 012000009080 00A1 mov r66 = 4 004000000000 00A2 nop.b 0 } { .mlx 000008000000 00B0 nop.m 0 00000000000C 00B1 movl r68 = 50397245 ;; 0180008F62 } { .mmi 0100708060C0 00C0 or r3 = r3, r8 ;; // 000144 008C82806000 00C1 st4 [r40] = r3 000008000000 00C2 nop.i 0 } { .mmi 00BC0A853600 00D0 st1 [r40] = r41, -40 ;; 00BC8A855F00 00D1 st4 [r40] = r42, -4 010802A10AC0 00D2 adds r43 = 8, r42 ;; // 000147 } { .mib 010802A20C80 00E0 adds r50 = 16, r42 // 000155 0000B2801C00 00E1 sxt4 r112 = r40 // 000144 00A000001000 00E2 br.call.sptk.many br0 = XPO$OPEN } { .mii 010806F00040 00F0 mov r1 = r111 010802858A00 00F1 adds r40 = 44, r40 // 000147 012000006640 00F2 mov r25 = 3 ;; } { .mib 012000100BC0 0100 add r47 = @ltoff(@fptr(XPO$FAILURE)), r1 0000B0001C40 0101 sxt4 r113 = 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 0000B2F01C80 0121 sxt4 r114 = r47 ;; 0000B2801C00 0122 sxt4 r112 = r40 } { .mib 0119F2870C00 0130 adds r48 = -200, r40 // 000155 0119F2870D00 0131 adds r52 = -200, r40 00A000001000 0132 br.call.sptk.many br0 = XPO$PUT ;; // 000147 } { .mmi 010806F00040 0140 mov r1 = r111 008083000C00 0141 ld4 r48 = [r48] // 000155 0119F2870D40 0142 adds r53 = -200, r40 ;; } { .mii 012000100DC0 0150 add r55 = @ltoff(@fptr(XPO$FAILURE)), XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 8 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 r1 0119F2820D80 0151 adds r54 = -240, r40 0119F2818CC0 0152 adds r51 = -244, r40 } { .mmi 012000006640 0160 mov r25 = 3 010073160C00 0161 or r48 = r48, r49 0000B0001C40 0162 sxt4 r113 = r0 ;; } { .mii 0080C3700DC0 0170 ld8 r55 = XPO$FAILURE // r55 = [r55] 0000B3301C00 0171 sxt4 r112 = r51 0119F2881140 0172 adds r69 = -192, r40 ;; // 000172 } { .mmi 008C83460000 0180 st4 [r52] = r48 // 000155 008C03552000 0181 st1 [r53] = r41 0000B3701C80 0182 sxt4 r114 = r55 } { .mfb 008C83664000 0190 st4 [r54] = r50 000008000000 0191 nop.f 0 00A000001000 0192 br.call.sptk.many br0 = XPO$OPEN } { .mmi 010806F00040 01A0 mov r1 = r111 ;; 012000101000 01A1 add r64 = @ltoff(@fptr(XPO$FAILURE)), // 000164 r1 012000100F80 01A2 add r62 = @ltoff(@fptr(STR$FAILURE)), // 000172 r1 } { .mii 012000100F00 01B0 add r60 = @ltoff(@fptr(XPO$FAILURE)), // 000179 r1 012000100E80 01B1 add r58 = @ltoff(@fptr(STR$FAILURE)), // 000187 r1 012000100E00 01B2 add r56 = @ltoff(@fptr(XPO$IO_FAILURE)), // 000194 r1 ;; } { .mmi 0080C3C00F40 01C0 ld8 r61 = XPO$FAILURE // r61 = [r60] // 000179 0080C4001040 01C1 ld8 r65 = XPO$FAILURE // r65 = [r64] // 000164 000008000000 01C2 nop.i 0 } { .mmi 0080C3E00FC0 01D0 ld8 r63 = STR$FAILURE // r63 = [r62] // 000172 0080C3A00EC0 01D1 ld8 r59 = STR$FAILURE // r59 = [r58] // 000187 000008000000 01D2 nop.i 0 } { .mfi 0080C3800E40 01E0 ld8 r57 = XPO$IO_FAILURE // r57 = [r56] // 000194 000008000000 01E1 nop.f 0 000008000000 01E2 nop.i 0 ;; } 01F0 L$2: // 000164 { .mmi 0119F28611C0 01F0 adds r71 = -208, r40 ;; XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 9 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 008084701200 01F1 ld4 r72 = [r71] 000008000000 01F2 nop.i 0 ;; } { .mfb 01C4048001C0 0200 cmp4.eq pr7, pr0 = r0, r72 000008000000 0201 nop.f 0 008600006007 0202 (pr7) br.cond.dpnt.few L$4 } { .mib 012000002640 0210 mov r25 = 1 0000B4801C00 0211 sxt4 r112 = r72 00A000001000 0212 br.call.sptk.many br0 = XST$FREE_TEMP } { .mfi 010806F00040 0220 mov r1 = r111 000008000000 0221 nop.f 0 000008000000 0222 nop.i 0 } 0230 L$4: { .mii 0119F2871280 0230 adds r74 = -200, r40 0119F28612C0 0231 adds r75 = -208, r40 0119F2818CC0 0232 adds r51 = -244, r40 ;; } { .mii 008C04A8C000 0240 st1 [r74] = r70 010802A31240 0241 adds r73 = 24, r42 012000006640 0242 mov r25 = 3 ;; } { .mii 008C84B92000 0250 st4 [r75] = r73 0000B4101C80 0251 sxt4 r114 = r65 0000B0001C40 0252 sxt4 r113 = r0 } { .mib 000008000000 0260 nop.m 0 0000B3301C00 0261 sxt4 r112 = r51 00A000001000 0262 br.call.sptk.many br0 = XPO$GET } { .mib 010806F00040 0270 mov r1 = r111 00A0308001C0 0271 tbit.z pr7, pr6 = r8, 0 008600050007 0272 (pr7) br.cond.dpnt.few L$6 // 000163 } { .mmi 0119F2881300 0280 adds r76 = -192, r40 ;; // 000168 008044C01300 0281 ld2 r76 = [r76] 000008000000 0282 nop.i 0 ;; } { .mfb 01C404C00240 0290 cmp4.eq pr9, pr0 = r0, r76 000008000000 0291 nop.f 0 00860000C009 0292 (pr9) br.cond.dpnt.few L$8 } { .mii 010800C31340 02A0 adds r77 = 24, r12 // 000172 01200000A640 02A1 mov r25 = 5 XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 10 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 0000B3F01D00 02A2 sxt4 r116 = r63 ;; } { .mii 000008000000 02B0 nop.m 0 0000B0001CC0 02B1 sxt4 r115 = r0 0000B4D01C80 02B2 sxt4 r114 = r77 } { .mii 000008000000 02C0 nop.m 0 0000B4501C40 02C1 sxt4 r113 = r69 0000B0001C00 02C2 sxt4 r112 = r0 } { .mfb 000008000000 02D0 nop.m 0 000008000000 02D1 nop.f 0 00A000001000 02D2 br.call.sptk.many br0 = XST$COPY } { .mfi 010806F00040 02E0 mov r1 = r111 000008000000 02E1 nop.f 0 000008000000 02E2 nop.i 0 } 02F0 L$8: // 000179 { .mmi 0119F2861380 02F0 adds r78 = -208, r40 ;; 008084E013C0 02F1 ld4 r79 = [r78] 000008000000 02F2 nop.i 0 ;; } { .mfb 01C404F001C0 0300 cmp4.eq pr7, pr0 = r0, r79 000008000000 0301 nop.f 0 008600006007 0302 (pr7) br.cond.dpnt.few L$10 } { .mib 012000002640 0310 mov r25 = 1 0000B4F01C00 0311 sxt4 r112 = r79 00A000001000 0312 br.call.sptk.many br0 = XST$FREE_TEMP } { .mfi 010806F00040 0320 mov r1 = r111 000008000000 0321 nop.f 0 000008000000 0322 nop.i 0 } 0330 L$10: { .mii 0119F2871440 0330 adds r81 = -200, r40 0119F2861480 0331 adds r82 = -208, r40 0119F2818CC0 0332 adds r51 = -244, r40 ;; } { .mii 008C0518C000 0340 st1 [r81] = r70 010802A41400 0341 adds r80 = 32, r42 012000006640 0342 mov r25 = 3 ;; } { .mii 008C852A0000 0350 st4 [r82] = r80 0000B3D01C80 0351 sxt4 r114 = r61 XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 11 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 0000B0001C40 0352 sxt4 r113 = r0 } { .mib 000008000000 0360 nop.m 0 0000B3301C00 0361 sxt4 r112 = r51 00A000001000 0362 br.call.sptk.many br0 = XPO$GET } { .mib 010806F00040 0370 mov r1 = r111 00A0308001C0 0371 tbit.z pr7, pr6 = r8, 0 008600030007 0372 (pr7) br.cond.dpnt.few L$6 // 000178 } { .mmi 0119F28814C0 0380 adds r83 = -192, r40 ;; // 000183 0080453014C0 0381 ld2 r83 = [r83] 000008000000 0382 nop.i 0 ;; } { .mfb 01C405300240 0390 cmp4.eq pr9, pr0 = r0, r83 000008000000 0391 nop.f 0 00860000C009 0392 (pr9) br.cond.dpnt.few L$13 } { .mii 010800C21500 03A0 adds r84 = 16, r12 // 000187 01200000A640 03A1 mov r25 = 5 0000B3B01D00 03A2 sxt4 r116 = r59 ;; } { .mii 000008000000 03B0 nop.m 0 0000B0001CC0 03B1 sxt4 r115 = r0 0000B5401C80 03B2 sxt4 r114 = r84 } { .mii 000008000000 03C0 nop.m 0 0000B4501C40 03C1 sxt4 r113 = r69 0000B0001C00 03C2 sxt4 r112 = r0 } { .mfb 000008000000 03D0 nop.m 0 000008000000 03D1 nop.f 0 00A000001000 03D2 br.call.sptk.many br0 = XST$COPY ;; } { .mfi 010806F00040 03E0 mov r1 = r111 000008000000 03E1 nop.f 0 000008000000 03E2 nop.i 0 } 03F0 L$13: // 000194 { .mii 010800C7D540 03F0 adds r85 = 62, r12 010800C41580 03F1 adds r86 = 32, r12 010800001C80 03F2 mov r114 = r0 ;; } { .mii 0120080E9C40 0400 mov r113 = 244 010800C41C00 0401 adds r112 = 32, r12 010800C495C0 0402 adds r87 = 36, r12 XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 12 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 } { .mfb 010800C59600 0410 adds r88 = 44, r12 000008000000 0411 nop.f 0 00A000001000 0412 br.call.sptk.many br0 = OTS$FILL } { .mmi 008C45586000 0420 st2 [r85] = r67 008C85688000 0421 st4 [r86] = r68 010800C21580 0422 adds r86 = 16, r12 ;; } { .mii 008C857AC000 0430 st4 [r87] = r86 010800C31580 0431 adds r86 = 24, r12 010800C91640 0432 adds r89 = 72, r12 } { .mmi 010800C916C0 0440 adds r91 = 72, r12 010812841700 0441 adds r92 = 288, r40 01080A8F1800 0442 adds r96 = 248, r40 ;; } { .mlx 008C858AC000 0450 st4 [r88] = r86 000008000000 0451 movl r90 = 562949953421312 018000002D } { .mii 0080C5901640 0460 ld8 r89 = [r89] 010800C317C0 0461 adds r95 = 24, r12 000008000000 0462 nop.i 0 } { .mlx 010812839880 0470 adds r98 = 284, r40 800000000000 0471 movl r93 = 2097152 ;; 018000402E } { .mii 010800C41840 0480 adds r97 = 32, r12 0108128418C0 0481 adds r99 = 288, r40 010812841900 0482 adds r100 = 288, r40 } { .mmi 01080A8E9780 0490 adds r94 = 244, r40 010075AB3640 0491 or r89 = r89, r90 012000006640 0492 mov r25 = 3 ;; } { .mii 010806F00040 04A0 mov r1 = r111 0000B3901C80 04A1 sxt4 r114 = r57 0000B0001C40 04A2 sxt4 r113 = r0 } { .mmi 008CC5BB2000 04B0 st8 [r91] = r89 008085C01700 04B1 ld4 r92 = [r92] 0000B5E01C00 04B2 sxt4 r112 = r94 ;; } { .mmi XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 13 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 008C860BE000 04C0 st4 [r96] = r95 008C862C2000 04C1 st4 [r98] = r97 010075DB9700 04C2 or r92 = r92, r93 ;; } { .mmb 008C863B8000 04D0 st4 [r99] = r92 008C06484000 04D1 st1 [r100] = r66 00A000001000 04D2 br.call.sptk.many br0 = XPO$RENAME } { .mfb 010806F00040 04E0 mov r1 = r111 000008000000 04E1 nop.f 0 0091FFFA2000 04E2 br.sptk.few L$2 ;; } 04F0 L$6: // 000202 { .mii 0120001019C0 04F0 add r103 = @ltoff(@fptr(XPO$FAILURE)), r1 010802A50A80 04F1 adds r42 = 40, r42 010802858A00 04F2 adds r40 = 44, r40 } { .mii 012000006640 0500 mov r25 = 3 0000B0001C40 0501 sxt4 r113 = r0 012000005A00 0502 mov r104 = 2 ;; // 000208 } { .mmi 0080C67019C0 0510 ld8 r103 = XPO$FAILURE // r103 = [r103] // 000202 00AC02858600 0511 st1 [r40] = r44, 24 000008000000 0512 nop.i 0 ;; } { .mii 00BC8A854F00 0520 st4 [r40] = r42, -68 0000B6701C80 0521 sxt4 r114 = r103 ;; 0000B2801C00 0522 sxt4 r112 = r40 } { .mib 0119F2871A40 0530 adds r105 = -200, r40 // 000208 0119F2818CC0 0531 adds r51 = -244, r40 00A000001000 0532 br.call.sptk.many br0 = XPO$PUT ;; // 000202 } { .mii 010806F00040 0540 mov r1 = r111 012000006640 0541 mov r25 = 3 // 000208 0000B0001C40 0542 sxt4 r113 = r0 } { .mii 008C069D0000 0550 st1 [r105] = r104 0000B3301C00 0551 sxt4 r112 = r51 ;; 012000101A80 0552 add r106 = @ltoff(@fptr(XPO$FAILURE)), r1 ;; } { .mmi 0080C6A01A80 0560 ld8 r106 = XPO$FAILURE ;; // r106 = [r106] 000008000000 0561 nop.m 0 0000B6A01C80 0562 sxt4 r114 = r106 } XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 14 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 { .mfb 000008000000 0570 nop.m 0 000008000000 0571 nop.f 0 00A000001000 0572 br.call.sptk.many br0 = XPO$CLOSE } { .mii 010806F00040 0580 mov r1 = r111 010802858A00 0581 adds r40 = 44, r40 // 000210 012000006640 0582 mov r25 = 3 ;; } { .mib 012000101B00 0590 add r108 = @ltoff(@fptr(XPO$FAILURE)), r1 0000B0001C40 0591 sxt4 r113 = r0 004000000000 0592 nop.b 0 ;; } { .mmi 00BC0A8D1500 05A0 st1 [r40] = r104, -44 0080C6C01B00 05A1 ld8 r108 = XPO$FAILURE // r108 = [r108] 000008000000 05A2 nop.i 0 ;; } { .mii 000008000000 05B0 nop.m 0 0000B2801C00 05B1 sxt4 r112 = r40 0000B6C01C80 05B2 sxt4 r114 = r108 } { .mfb 000008000000 05C0 nop.m 0 000008000000 05C1 nop.f 0 00A000001000 05C2 br.call.sptk.many br0 = XPO$CLOSE } { .mlx 010806F00040 05D0 mov r1 = r111 000000000000 05D1 movl r8 = 2129921 ;; // 000216 0190004044 } { .mii 000008000000 05E0 nop.m 0 0001540DC000 05E1 mov.i rspfs = r110 010810C20300 05E2 adds r12 = 272, r12 ;; } { .mib 000008000000 05F0 nop.m 0 000E001DA000 05F1 mov br0 = r109 000108001100 05F2 br.ret.sptk.many br0 ;; } .endp TEST_RENAME Routine Size: 1536 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$, 244, 16 .lcomm $IOB$FILE_SPEC, 8, 8 .lcomm $IOB$OUTPUT, 8, 8 XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 15 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 .lcomm $IOB$FILE_SPEC, 8, 8 .lcomm $IOB$PROMPT, 8, 8 .lcomm $IOB$PROMPT, 8, 8 .lcomm $IOB$OUTPUT, 8, 8 .lcomm P.AAA, 10, 16 .lcomm fill$$1, 2, 2 .lcomm P.AAB, 23, 16 .lcomm fill$$2, 1, 1 .lcomm P.AAC, 9, 16 .lcomm fill$$3, 3, 4 .lcomm P.AAD, 20, 16 .lcomm P.AAE, 15, 16 .lcomm fill$$4, 1, 1 .lcomm P.AAF, 32, 16 .psect $OWN$, CON, LCL, NOSHR, NOEXE, WRT, NOVEC $IOB$FILE_SPEC: 000A 02DC data2 0xA // data2 10 0E 02DE data1 0xE // data1 14 01 02DF data1 0x1 // data1 1 00000000 02E0 data4 P.AAA $IOB$OUTPUT: 0017 02E4 data2 0x17 // data2 23 0E 02E6 data1 0xE // data1 14 01 02E7 data1 0x1 // data1 1 00000000 02E8 data4 P.AAB $IOB$FILE_SPEC: 0009 02EC data2 0x9 // data2 9 0E 02EE data1 0xE // data1 14 01 02EF data1 0x1 // data1 1 00000000 02F0 data4 P.AAC $IOB$PROMPT: 0014 02F4 data2 0x14 // data2 20 0E 02F6 data1 0xE // data1 14 01 02F7 data1 0x1 // data1 1 00000000 02F8 data4 P.AAD $IOB$PROMPT: 000F 02FC data2 0xF // data2 15 0E 02FE data1 0xE // data1 14 01 02FF data1 0x1 // data1 1 00000000 0300 data4 P.AAE $IOB$OUTPUT: 0020 0304 data2 0x20 // data2 32 0E 0306 data1 0xE // data1 14 01 0307 data1 0x1 // data1 1 00000000 0308 data4 P.AAF .psect $PLIT$, CON, LCL, NOSHR, NOEXE, NOWRT, NOVEC P.AAA: 24535953 0000 string "SYS$OUTPUT" 5054554F 0004 5455 0008 P.AAB: 4F50580A 000C string "\X0AXPORT File Rename Test" 46205452 0010 20656C69 0014 616E6552 0018 5420656D 001C XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 16 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 747365 0020 P.AAC: 24535953 0024 string "SYS$INPUT" 55504E49 0028 54 002C P.AAD: 7275430A 0030 string "\X0ACurrent file name? " 746E6572 0034 6C696620 0038 616E2065 003C 203F656D 0040 P.AAE: 2077654E 0044 string "New file name? " 656C6966 0048 6D616E20 004C 203F65 0050 P.AAF: 4F50580A 0054 string "\X0AXPORT File Rename Test Complete" 46205452 0058 20656C69 005C 616E6552 0060 5420656D 0064 20747365 0068 706D6F43 006C 6574656C 0070 .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 XPO$OPEN, @function .global XPO$OPEN .section .data .type XPO$FAILURE, @function .global XPO$FAILURE .section .data .type XPO$FAILURE, @function .global XPO$FAILURE .section .data .type STR$FAILURE, @function .global STR$FAILURE XTESTR Machine Code Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 17 X00.08 TEST_RENAME 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 .section .data .type STR$FAILURE, @function .global STR$FAILURE .section .data .type XPO$IO_FAILURE, @function .global XPO$IO_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 .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 OTS$FILL, @function .global OTS$FILL .section .data .type XPO$RENAME, @function .global XPO$RENAME .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 XPO$CLOSE, @function .global XPO$CLOSE .section .data .type XPO$FAILURE, @function .global XPO$FAILURE .section .data .type XPO$CLOSE, @function .global XPO$CLOSE ; Library Statistics ; ; -------- Symbols -------- Pages ; File Total Loaded Percent Mapped ; ; DISK$NORMS_OWN:[LASTOVICA.XPORT.VMSGEN]XPORT.L32;14 ; 590 134 22 270 Source Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 18 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 Source Listing 4-FEB-2004 11:02:14 BLISS-32I T1.1-053 Page 19 Source Listing 19-MAR-2002 10:12:37 [LASTOVICA.XPORT.VMSGEN]XTESTR.BLI;1 COMMAND LINE: BLISSXTESTR/LIST/DEBUG