RADTOASC                                                         22-AUG-1978 03:57:15   VAX-11 MACRO X0.3-11               Page   0

TABLE OF CONTENTS   



   (2)      37  CONVERT RAD50 TO ASCII

RADTOASC                                                         22-AUG-1978 03:57:15   VAX-11 MACRO X0.3-11               Page   1

000001                                                                                                                           (1)



                                     0000     1 	.TITLE	RADTOASC

                                     0000     2 	.IDENT	/000001/

                                     0000     3 

                                     0000     4 ;

                                     0000     5 ; COPYRIGHT (C) 1978

                                     0000     6 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS 01754

                                     0000     7 ;

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

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

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

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

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

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

                                     0000    14 ; REMAIN IN DEC.

                                     0000    15 ;

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

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

                                     0000    18 ; CORPORATION.

                                     0000    19 ;

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

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

                                     0000    22 

                                     0000    23 ;++

                                     0000    24 ; FACILITY:

                                     0000    25 ;

                                     0000    26 ;	Utility routine for the PURGE command

                                     0000    27 ;

                                     0000    28 ; ABSTRACT:

                                     0000    29 ;

                                     0000    30 ;	This module contains a RAD-50 to ASCII conversion routine for use by the

                                     0000    31 ;	DELETE utility, or more specifically, the PURGE command.

                                     0000    32 ;

                                     0000    33 ; AUTHOR: Carol Peters, 17 May 1978 13:42

                                     0000    34 ;--

                                 00000000    35 	.PSECT	$MCODE$,NOWRT

RADTOASC                                                         22-AUG-1978 03:57:15   VAX-11 MACRO X0.3-11               Page   2

000001          CONVERT RAD50 TO ASCII                                                                                           (2)



                                     0000    37 	.SBTTL	CONVERT RAD50 TO ASCII

                                     0000    38 ;++

                                     0000    39 ; DEL$R50_CVTN - CONVERT RAD50 TO ASCII

                                     0000    40 ;

                                     0000    41 ; FUNCTIONAL DESCRIPTION:

                                     0000    42 ;

                                     0000    43 ; THIS ROUTINE CONVERTS A VARRIABLE NUMBER OF WORDS OF RAD50 TO AN ASCII STRING.

                                     0000    44 ;

                                     0000    45 ; CALLING SEQUENCE:

                                     0000    46 ;

                                     0000    47 ;	JSB	DEL$R50_CVTn

                                     0000    48 ;

                                     0000    49 ;

                                     0000    50 ; INPUT PARAMETERS:

                                     0000    51 ;

                                     0000    52 ;	R4 = RAD50 BLOCK ADDRESS

                                     0000    53 ;	R7 = ADDRESS OF TARGET STRING

                                     0000    54 ;

                                     0000    55 ; OUTPUT PARAMETERS:

                                     0000    56 ;

                                     0000    57 ;	R4 = POINTER TO NEXT WORD TO CONVERT

                                     0000    58 ;	R7 = NEXT FREE BYTE IN TARGET STRING

                                     0000    59 ;

                                     0000    60 ; STRING IS IN STANDARD COUNT,TEXT FORMAT. BLANKS STOP THE CONVERTION.

                                     0000    61 ;--

                                     0000    62 DEL$R50_CVT3::				; CONVERT THREE WORDS

            50            84     3C  0000    63 	MOVZWL	(R4)+,R0		; GET THE WORD

                          08     10  0003    64 	BSBB	CVT			; CONVERT A WORD

                                     0005    65 DEL$R50_CVT2::				; CONVERT TWO WORDS

            50            84     3C  0005    66 	MOVZWL	(R4)+,R0		; GET WORD

                          03     10  0008    67 	BSBB	CVT			; CONVERT A WORD

                                     000A    68 DEL$R50_CVT1::				; CONVERT ONE WORD

            50            84     3C  000A    69 	MOVZWL	(R4)+,R0		; GET THE WORD

                          51     D4  000D    70 CVT:	CLRL	R1			; SET HIGH HALF

            50            28     7B  000F    71 	EDIV	#40,R0,R0,-(SP)		; GET REMAINDER FOR EACH CHARACTER

            7E            50         0012       

            50            28     7B  0014    72 	EDIV	#40,R0,R0,-(SP)		;

            7E            50         0017       

            50            28     7B  0019    73 	EDIV	#40,R0,R0,-(SP)		;

            7E            50         001C       

            67            8E     F6  001E    74 	CVTLB	(SP)+,(R7)		; CONVERT FIRST CHARACTER

                          08     10  0021    75 	BSBB	50$			; 

            67            8E     F6  0023    76 	CVTLB	(SP)+,(R7)		; CONVERT SECOND CHARACTER

                          03     10  0026    77 	BSBB	50$			; 

            67            8E     F6  0028    78 	CVTLB	(SP)+,(R7)		; CONVERT THIRD CHARACTER

                          67     95  002B    79 50$:	TSTB	(R7)			; DONE?

                          14     13  002D    80 	BEQL	DONE			; IF EQL THEN YES

            67            1B     91  002F    81 	CMPB	#27,(R7)		; LETTER?

                          09     1A  0032    82 	BGTRU	60$			; IF EQL THEN YES

                          03     13  0034    83 	BEQL	55$			; IF EQL THEN DOLLAR

            67            09     80  0036    84 	ADDB	#9,(R7)			;

            67         C9 8F     80  0039    85 55$:	ADDB	#-55,(R7)		;

            67            20     80  003D    86 60$:	ADDB	#32,(R7)		;

            87            20     80  0040    87 65$:	ADDB	#32,(R7)+		;

                                 05  0043    88 DONE:	RSB				;

                                     0044    89 

                                     0044    90 	.END

RADTOASC                                                         22-AUG-1978 03:57:15   VAX-11 MACRO X0.3-11               Page   3

SYMBOL TABLE                                                                                                                     (2)



CVT              0000000D R     02   

DEL$R50_CVT1     0000000A RG    02   

DEL$R50_CVT2     00000005 RG    02   

DEL$R50_CVT3     00000000 RG    02   

DONE             00000043 R     02   





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  

$MCODE$          00000044      02     NOPIC   USR   CON   REL   LCL NOSHR   EXE   RD  NOWRT BYTE  





THERE WERE NO ERRORS OR WARNINGS.

28444. BYTES LEFT IN FREE MEMORY POOL.

OBJ$:RADTOASC,LIS$:RADTOASC/-SP=SRC$:RADTOASC

0 MLB DIR RDS - 0 GETS TO DEFINE 0 MACROS. 1 INTER. FILE WRITES. 

