! *********************************************************************************************************************************************************************************************************************************************************** ! Created 9-NOV-1999 09:12:26 by VAX SDL V3.2-12 Source: 9-NOV-1999 09:12:25 FORD2$:[VFORT.KIT.FORSYSDEF]OTS$ROUTINES.SDI;1 ! *********************************************************************************************************************************************************************************************************************************************************** !*** MODULE ots$routines *** CDEC$ OPTIONS /NOALIGN ! *************************************************************************** ! * ! COPYRIGHT (c) 1988 BY * ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * ! ALL RIGHTS RESERVED. * ! * ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * ! ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE * ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * ! TRANSFERRED. * ! * ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * ! CORPORATION. * ! * ! DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * ! SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * ! * ! * ! *************************************************************************** ! OTS$CVT_T_D ! ! Convert Numeric Text to D- or F-Floating Value ! ! The Convert Numeric Text to D- or F-Floating routines ! convert an ASCII text string representation of a ! numeric value to a D-floating or F-floating value. ! INTEGER*4 ots$cvt_t_d EXTERNAL ots$cvt_t_d ! OTS$CVT_T_F ! ! Convert Numeric Text to D- or F-Floating Value ! ! The Convert Numeric Text to D- or F-Floating routines ! convert an ASCII text string representation of a ! numeric value to a D_floating or F_floating value. ! INTEGER*4 ots$cvt_t_f EXTERNAL ots$cvt_t_f ! OTS$CVT_T_G ! ! Convert Numeric Text to G- or H-Floating Value ! ! The Convert Numeric Text to G- or H-Floating routines ! convert an ASCII text string representation of a ! numeric value to a G-floating or H-floating value. ! INTEGER*4 ots$cvt_t_g EXTERNAL ots$cvt_t_g ! OTS$CVT_T_H ! ! Convert Numeric Text to G- or H-Floating Value ! ! The Convert Numeric Text to G- or H-Floating routines ! convert an ASCII text string representation of a ! numeric value to a G_floating or H_floating value. ! INTEGER*4 ots$cvt_t_h EXTERNAL ots$cvt_t_h ! OTS$DIVC ! ! Complex Division ! ! The Complex Division routines ! return a complex result of a division on complex ! numbers. ! ! ENTRY ots$divc ALIAS $ots_divc PARAMETER ( ! F_FLOATING COMPLEX NAMED complex_dividend IN ! TYPENAME f_floating_complex VALUE, ! F_FLOATING COMPLEX NAMED complex_divisor IN ! TYPENAME f_floating_complex VALUE ) ! RETURNS F_FLOATING COMPLEX NAMED RESULT TYPENAME f_floating_complex; ! OTS$DIVCD_R3 ! ! Complex Division ! ! The Complex Division routines ! return a complex result of a division on complex ! numbers. ! ! ENTRY ots$divcd_r3 ALIAS $ots_divcd_r3 PARAMETER ( ! D_FLOATING COMPLEX NAMED complex_dividend IN ! TYPENAME d_floating_complex VALUE, ! D_FLOATING COMPLEX NAMED complex_divisor IN ! TYPENAME d_floating_complex VALUE ) ! RETURNS D_FLOATING COMPLEX NAMED RESULT TYPENAME d_floating_complex; ! OTS$DIVCG_R3 ! ! Complex Division ! ! The Complex Division routines ! return a complex result of a division on complex ! numbers. ! ! ENTRY ots$divcg_r3 ALIAS $ots_divcg_r3 PARAMETER ( ! G_FLOATING COMPLEX NAMED complex_dividend IN ! TYPENAME g_floating_complex VALUE, ! G_FLOATING COMPLEX NAMED complex_divisor IN ! TYPENAME g_floatin_complex VALUE ) ! RETURNS G_FLOATING COMPLEX NAMED RESULT TYPENAME g_floating_complex; ! OTS$DIV_PK_LONG ! ! Packed Decimal Division with Long Divisor ! ! The Packed Decimal Division with Long Divisor routine ! divides fixed-point decimal data, which is stored in packed ! decimal form, when precision and scale requirements for the quotient call ! for multiple precision division. The divisor must have a precision of ! thirty or thirty-one digits. ! INTEGER*4 ots$div_pk_long EXTERNAL ots$div_pk_long ! OTS$DIV_PK_SHORT ! ! Packed Decimal Division with Short Divisor ! ! The Packed Decimal Division with Short Divisor routine ! divides fixed-point decimal data ! when precision and scale requirements for the quotient call for ! multiple-precision division. ! INTEGER*4 ots$div_pk_short EXTERNAL ots$div_pk_short ! OTS$MOVE3 ! ! Move Data Without Fill ! ! The Move Data Without Fill routine ! moves up to 231--1 bytes (2,147,483,647 bytes) from a ! specified source address to a specified destination address. ! ! Subroutine ots$move3 ! OTS$MOVE5 ! ! Move Data with Fill ! ! The Move Data with Fill routine ! moves up to 231 -- 1 bytes (2,147,483,647 bytes) from a ! specified source address to a specified destination address, ! with separate source and destination lengths, ! and with fill. Overlap of the source and destination arrays ! does not affect the result. ! ! Subroutine ots$move5 ! OTS$MULCD_R3 ! ! Complex Multiplication ! ! The Complex Multiplication routines ! calculate the complex product of two complex ! values. ! ! ENTRY ots$mulcd_r3 ALIAS $ots_mulcd_r3 PARAMETER ( ! D_FLOATING COMPLEX NAMED complex_multiplier IN ! TYPENAME d_floating_complex VALUE, ! D_FLOATING COMPLEX NAMED complex_multiplicand IN ! TYPENAME d_floating_complex VALUE ) ! RETURNS D_FLOATING COMPLEX NAMED RESULT TYPENAME d_floating_complex; ! OTS$MULCG_R3 ! ! Complex Multiplication ! ! The Complex Multiplication routines ! calculate the complex product of two complex ! values. ! ! ENTRY ots$mulcg_r3 ALIAS $ots_mulcg_r3 PARAMETER ( ! G_FLOATING COMPLEX NAMED complex_multiplier IN ! TYPENAME g_floating_complex VALUE, ! G_FLOATING COMPLEX NAMED complex_multiplicand IN ! TYPENAME g_floating_complex VALUE ) ! RETURNS G_FLOATING COMPLEX NAMED RESULT TYPENAME g_floating_complex; ! OTS$CNVOUT ! ! Convert D-floating, G-floating or H-floating Number to Character String ! ! The Convert Floating to Character String routines convert ! a D-floating, G-floating or H-floating number ! to a character string in ! the FORTRAN E format. ! INTEGER*4 ots$cnvout EXTERNAL ots$cnvout ! OTS$CNVOUT_G ! ! Convert D_floating, G_floating or H_floating Number to Character String ! ! The Convert Floating to Character String routines convert ! a D_floating, G_floating or H_floating number ! to a character string in ! the FORTRAN E format. ! INTEGER*4 ots$cnvout_g EXTERNAL ots$cnvout_g ! OTS$CNVOUT_H ! ! Convert D_floating, G_floating or H_floating Number to Character String ! ! The Convert Floating to Character String routines convert ! a D_floating, G_floating or H_floating number ! to a character string in ! the FORTRAN E format. ! INTEGER*4 ots$cnvout_h EXTERNAL ots$cnvout_h ! OTS$POWCC ! ! Raise a Complex Base to a Complex Floating-Point Exponent ! ! The Raise a Complex Base to a Complex Floating-Point Exponent routines ! raise ! a complex base to a complex exponent. ! ! ENTRY ots$powcc ALIAS $ots_powcc PARAMETER ( ! F_FLOATING COMPLEX NAMED complex_base IN ! TYPENAME f_floating_complex VALUE, ! F_FLOATING COMPLEX NAMED complex_exponent_value IN ! TYPENAME f_floating_complex VALUE ) ! RETURNS F_FLOATING COMPLEX NAMED RESULT TYPENAME f_floating_complex; ! OTS$POWCDCD_R3 ! ! Raise a Complex Base to a Complex Floating-Point Exponent ! ! The Raise a Complex Base to a Complex Floating-Point Exponent routines ! raise ! a complex base to a complex exponent. ! ! ENTRY ots$powcdcd_r3 ALIAS $ots_powcdcd_r3 PARAMETER ( ! D_FLOATING COMPLEX NAMED complex_base IN ! TYPENAME d_floating_complex VALUE, ! D_FLOATING COMPLEX NAMED complex_exponent_value IN ! TYPENAME d_floating_complex VALUE ) ! RETURNS D_FLOATING COMPLEX NAMED RESULT TYPENAME d_floating_complex; ! OTS$POWCGCG_R3 ! ! Raise a Complex Base to a Complex Floating-Point Exponent ! ! The Raise a Complex Base to a Complex Floating-Point Exponent routines ! raise ! a complex base to a complex exponent. ! ! ENTRY ots$powcgcg_r3 ALIAS $ots_powcgcg_r3 PARAMETER ( ! G_FLOATING COMPLEX NAMED complex_base IN ! TYPENAME g_floating_complex VALUE, ! G_FLOATING COMPLEX NAMED complex_exponent_value IN ! TYPENAME g_floating_complex VALUE ) ! RETURNS G_FLOATING COMPLEX NAMED RESULT TYPENAME g_floating_complex; ! OTS$POWCJ ! ! Raise a Complex Base to a Signed Longword Integer Exponent ! ! The Raise a Complex Base to a Signed Longword Integer Exponent ! routines return the complex result of raising a complex base to an ! integer exponent. ! ! ENTRY ots$powcj ALIAS $ots_powcj PARAMETER ( ! F_FLOATING COMPLEX NAMED complex_base IN ! TYPENAME f_floating_complex VALUE, ! LONGWORD NAMED longword_integer_exponent IN ! TYPENAME longword_signed VALUE ) ! RETURNS F_FLOATING COMPLEX NAMED RESULT TYPENAME f_floating_complex; ! OTS$POWCDJ_R3 ! ! Raise a Complex Base to a Signed Longword Integer Exponent ! ! The Raise a Complex Base to a Signed Longword Integer Exponent ! routines return the complex result of raising a complex base to an ! integer exponent. ! ! ENTRY ots$powcdj_r3 ALIAS $ots_powcdj_r3 PARAMETER ( ! D_FLOATING COMPLEX NAMED complex_base IN ! TYPENAME D_floating_complex VALUE, ! LONGWORD NAMED longword_integer_exponent IN ! TYPENAME longword_signed VALUE ) ! RETURNS D_FLOATING COMPLEX NAMED RESULT TYPENAME d_floating_complex; ! OTS$POWCGJ_R3 ! ! Raise a Complex Base to a Signed Longword Integer Exponent ! ! The Raise a Complex Base to a Signed Longword Integer Exponent ! routines return the complex result of raising a complex base to an ! integer exponent. ! ! ENTRY ots$powcgj_r3 ALIAS $ots_powcgj_r3 PARAMETER ( ! G_FLOATING COMPLEX NAMED complex_base IN ! TYPENAME g_floating_complex VALUE, ! LONGWORD NAMED longword_integer_exponent IN ! TYPENAME longword_signed VALUE ) ! RETURNS G_FLOATING COMPLEX NAMED RESULT TYPENAME g_floating_complex; ! OTS$POWDD ! ! Raise a D_floating Base to D_floating Exponent ! ! The Raise a D_floating Base to a D_floating Exponent routine ! raises a D_floating base to a D_floating ! exponent. ! ! ENTRY ots$powdd ALIAS $ots_powdd PARAMETER ( ! D_FLOATING NAMED D_floating_point_base IN ! TYPENAME d_floating VALUE, ! D_FLOATING NAMED D_floating_point_exponent IN ! TYPENAME d_floating VALUE ) ! RETURNS D_FLOATING NAMED RESULT TYPENAME d_floating; ! OTS$POWDJ ! ! Raise a D_floating Base to a Longword Exponent ! ! The Raise a D_floating Base to a Longword Exponent routine ! raises a D_floating base to a longword exponent. ! ! ENTRY ots$powdj ALIAS $ots_powdj PARAMETER ( ! D_FLOATING NAMED D_floating_point_base IN ! TYPENAME d_floating VALUE, ! LONGWORD NAMED longword_integer_exponent IN ! TYPENAME longword_signed VALUE ) ! RETURNS D_FLOATING NAMED RESULT TYPENAME d_floating; ! OTS$POWDR ! ! Raise a D_floating Base to an F_floating Exponent ! ! The Raise a D_floating Base to an F_floating Exponent routines ! raise a D_floating base to an ! F_floating exponent. ! ! ENTRY ots$powdr ALIAS $ots_powdr PARAMETER ( ! D_FLOATING NAMED D_floating_point_base IN ! TYPENAME d_floating VALUE, ! F_FLOATING NAMED F_floating_point_exponent IN ! TYPENAME f_floating VALUE ) ! RETURNS D_FLOATING NAMED RESULT TYPENAME d_floating; ! OTS$POWGG ! ! Raise a G-floating Base to a G-floating Exponent ! ! The Raise a G-floating Base to a G-floating Exponent routine ! raises a G-floating base to a G-floating exponent. ! ! ENTRY ots$powgg ALIAS $ots_powgg PARAMETER ( ! G_FLOATING NAMED G_floating_point_base IN ! TYPENAME g_floating VALUE, ! G_FLOATING NAMED G_floating_point_exponent IN ! TYPENAME g_floating VALUE ) ! RETURNS G_FLOATING NAMED RESULT TYPENAME g_floating; ! OTS$POWGJ ! ! Raise a G-floating Base to a Longword Exponent ! ! The Raise a G-floating Base to a Longword Exponent routine ! raises a G-floating base to a longword exponent. ! ! ENTRY ots$powgj ALIAS $ots_powgj PARAMETER ( ! G_FLOATING NAMED G_floating_point_base IN ! TYPENAME g_floating VALUE, ! LONGWORD NAMED longword_integer_exponent IN ! TYPENAME longword_signed VALUE ) ! RETURNS G_FLOATING NAMED RESULT TYPENAME g_floating; ! OTS$POWHH_R3 ! ! Raise an H-floating Base to an H-floating Exponent ! ! The Raise an H-floating Base to an H-floating Exponent ! routine raises an H-floating base to an H-floating exponent. ! ! ENTRY ots$powhh_r3 ALIAS $ots_powhh_r3 PARAMETER ( ! H_FLOATING NAMED H_floating_point_base IN ! TYPENAME h_floating VALUE, ! H_FLOATING NAMED H_floating_point_exponent IN ! TYPENAME h_floating VALUE ) ! RETURNS H_FLOATING NAMED RESULT TYPENAME h_floating; ! OTS$POWHJ_R3 ! ! Raise an H-floating Base to a Longword Exponent ! ! The Raise an H-floating Base to a Longword Exponent ! routine raises an H-floating base to a longword exponent. ! ! ENTRY ots$powhj_r3 ALIAS $ots_powhj_r3 PARAMETER ( ! H_FLOATING NAMED H_floating_point_base IN ! TYPENAME h_floating VALUE, ! LONGWORD NAMED longword_integer_exponent IN ! TYPENAME longword_signed VALUE ) ! RETURNS H_FLOATING NAMED RESULT TYPENAME h_floating; ! OTS$POWII ! ! Raise a Word Base to a Word Exponent ! ! The Raise a Word Base to a Word Exponent routine ! raises a word base to a word exponent. ! INTEGER*2 ots$powii EXTERNAL ots$powii ! OTS$POWJJ ! ! Raise a Longword Base to a Longword Exponent ! ! The Raise a Longword Base to a Longword Exponent routine ! raises a signed longword base to a signed longword exponent. ! INTEGER*4 ots$powjj EXTERNAL ots$powjj ! OTS$POWLULU ! ! Raise an Unsigned Longword Base to an Unsigned Longword Exponent ! ! The Raise an Unsigned Longword Base to an Unsigned Longword ! Exponent routine ! raises an unsigned longword integer base to ! an unsigned longword integer exponent. ! INTEGER*4 ots$powlulu EXTERNAL ots$powlulu ! OTS$POWRD ! ! Raise an F-floating Base to a D-floating Exponent ! ! The Raise an F-floating Base to a D-floating Exponent ! routine raises an F-floating base to a D-floating ! exponent. ! ! ENTRY ots$powrd ALIAS $ots_powrd PARAMETER ( ! F_FLOATING NAMED F_floating_point_base IN ! TYPENAME f_floating VALUE, ! D_FLOATING NAMED D_floating_point_exponent IN ! TYPENAME d_floating VALUE ) ! RETURNS D_FLOATING NAMED RESULT TYPENAME d_floating; ! OTS$POWRJ ! ! Raise an F-floating Base to a Longword Exponent ! ! The Raise an F-floating Base to a Longword Exponent ! routine raises an F-floating base to a longword exponent. ! REAL*4 ots$powrj EXTERNAL ots$powrj ! OTS$POWRR ! ! Raise an F-floating Base to an F-floating Exponent ! ! The Raise an F-floating Base to an F-floating Exponent ! routine raises an F-floating base to an F-floating ! exponent. ! REAL*4 ots$powrr EXTERNAL ots$powrr ! OTS$POWRLU ! ! Raise a Floating-Point Base to an Unsigned Longword Integer Exponent ! ! The Raise a Floating-Point Base to an Unsigned Longword Integer ! Exponent routines raises ! a floating-point base to an unsigned longword integer exponent. ! REAL*4 ots$powrlu EXTERNAL ots$powrlu ! OTS$POWDLU ! ! Raise a Floating-Point Base to an Unsigned Longword Integer Exponent ! ! The Raise a Floating-Point Base to an Unsigned Longword Integer ! Exponent routines raises ! a floating-point base to an unsigned longword integer exponent. ! ! ENTRY ots$powdlu ALIAS $ots_powdlu PARAMETER ( ! D_FLOATING NAMED floating_point_base IN ! TYPENAME d_floating VALUE, ! LONGWORD UNSIGNED NAMED unsigned_lword_int_exponent IN ! TYPENAME longword_unsigned VALUE ) ! RETURNS D_FLOATING NAMED RESULT TYPENAME d_floating; ! OTS$POWGLU ! ! Raise a Floating-Point Base to an Unsigned Longword Integer Exponent ! ! The Raise a Floating-Point Base to an Unsigned Longword Integer ! Exponent routines raises ! a floating-point base to an unsigned longword integer exponent. ! ! ENTRY ots$powglu ALIAS $ots_powglu PARAMETER ( ! G_FLOATING NAMED floating_point_base IN ! TYPENAME g_floating VALUE, ! LONGWORD UNSIGNED NAMED unsigned_lword_int_exponent IN ! TYPENAME longword_unsigned VALUE ) ! RETURNS G_FLOATING NAMED RESULT TYPENAME g_floating; ! OTS$POWHLU_R3 ! ! Raise a Floating-Point Base to an Unsigned Longword Integer Exponent ! ! The Raise a Floating-Point Base to an Unsigned Longword Integer ! Exponent routines raises ! a floating-point base to an unsigned longword integer exponent. ! ! ENTRY ots$powhlu_r3 ALIAS $ots_powhlu_r3 PARAMETER ( ! H_FLOATING NAMED floating_point_base IN ! TYPENAME h_floating VALUE, ! LONGWORD UNSIGNED NAMED unsigned_lword_int_exponent IN ! TYPENAME longword_unsigned VALUE ) ! RETURNS H_FLOATING NAMED RESULT TYPENAME h_floating; ! OTS$SCOPY_DXDX ! ! Copy a Source String Passed by Descriptor to a Destination String ! ! The Copy a Source String Passed by Descriptor to a Destination String ! routine ! copies a source string to a destination string. Both strings are ! passed by descriptor. ! INTEGER*2 ots$scopy_dxdx EXTERNAL ots$scopy_dxdx ! OTS$SCOPY_R_DX ! ! Copy a Source String Passed by Reference to a Destination String ! ! The Copy a Source String Passed by Reference to a Destination String ! routine copies a source string passed by reference to a destination ! string. ! INTEGER*2 ots$scopy_r_dx EXTERNAL ots$scopy_r_dx ! OTS$SFREE1_DD ! ! Strings, Free One Dynamic ! ! The Free One Dynamic String routine ! returns one dynamic string area to free storage. ! ! Subroutine ots$sfree1_dd ! OTS$SFREEN_DD ! ! Strings, Free n Dynamic ! ! The Free n Dynamic Strings routine ! takes as input a vector of one or more dynamic string areas and ! returns them to free storage. ! ! Subroutine ots$sfreen_dd ! OTS$SGET1_DD ! ! Strings, Get One Dynamic ! ! The Get One Dynamic String routine ! allocates a specified number of bytes of dynamic virtual ! memory to a specified string descriptor. ! ! Subroutine ots$sget1_dd ! OTS$CVT_L_TB ! ! Convert an Unsigned Integer to Binary Text ! ! The Convert an Unsigned Integer to Binary Text routine ! converts an unsigned integer value of arbitrary length to ! binary representation in an ASCII text string. By default, a longword is ! converted. ! INTEGER*4 ots$cvt_l_tb EXTERNAL ots$cvt_l_tb ! OTS$CVT_L_TI ! ! Convert Signed Integer to Decimal Text ! ! The Convert Signed Integer to Decimal Text routine ! converts a signed integer to a decimal ASCII text string. This ! routine supports FORTRAN Iw and Iw.m output and BASIC output conversion. ! INTEGER*4 ots$cvt_l_ti EXTERNAL ots$cvt_l_ti ! OTS$CVT_L_TL ! ! Convert Integer to Logical Text ! ! The Convert Integer to Logical Text routine ! converts an integer to an ASCII text string representation ! using FORTRAN L (logical) format. ! INTEGER*4 ots$cvt_l_tl EXTERNAL ots$cvt_l_tl ! OTS$CVT_L_TO ! ! Convert Unsigned Integer to Octal Text ! ! The Convert Unsigned Integer to Octal Text routine ! converts an unsigned integer to an octal ASCII text string. ! OTS$CVT_L_TO supports FORTRAN Ow and Ow.m output conversion formats. ! INTEGER*4 ots$cvt_l_to EXTERNAL ots$cvt_l_to ! OTS$CVT_L_TU ! ! Convert Unsigned Integer to Decimal Text ! ! The Convert Unsigned Integer to Decimal Text routine ! converts a byte, word, or longword value to unsigned decimal ! representation in an ASCII text string. By default, a longword is ! converted. ! INTEGER*4 ots$cvt_l_tu EXTERNAL ots$cvt_l_tu ! OTS$CVT_L_TZ ! ! Convert Integer to Hexadecimal Text ! ! The Convert Integer to Hexadecimal Text routine ! converts an unsigned integer to a hexadecimal ASCII text ! string. OTS$CVT_L_TZ supports FORTRAN Zw and Zw.m output conversion ! formats. ! INTEGER*4 ots$cvt_l_tz EXTERNAL ots$cvt_l_tz ! OTS$CVT_TB_L ! ! Convert Binary Text to Unsigned Integer ! ! The Convert Binary Text to Unsigned Integer routine ! converts an ASCII text string representation of an unsigned ! binary value to an unsigned integer value of arbitrary length. By default, ! the result is a longword. Valid input characters are the blank and the ! digits 0 and 1. No sign is permitted. ! INTEGER*4 ots$cvt_tb_l EXTERNAL ots$cvt_tb_l ! OTS$CVT_TI_L ! ! Convert Signed Integer Text to Integer ! ! The Convert Signed Integer Text to Integer routine ! converts an ASCII text string representation of a decimal ! number to a signed byte, word, or longword integer value. ! The result is a longword by ! default, but the calling program can specify a byte or a word value ! instead. ! INTEGER*4 ots$cvt_ti_l EXTERNAL ots$cvt_ti_l ! OTS$CVT_TL_L ! ! Convert Logical Text to Integer ! ! The Convert Logical Text to Integer routine ! converts an ASCII text string representation of a FORTRAN-77 L ! format to a byte, word, or longword integer value. The result is a longword by ! default, but the calling program can specify a byte or a word value ! instead. ! INTEGER*4 ots$cvt_tl_l EXTERNAL ots$cvt_tl_l ! OTS$CVT_TO_L ! ! Convert Octal Text to Signed Integer ! ! The Convert Octal Text to Signed Integer routine ! converts an ASCII text string representation of an ! octal value to a signed integer of an arbitrary length. The result is a ! longword by default, but the calling program can specify a byte, word, ! or longword. ! INTEGER*4 ots$cvt_to_l EXTERNAL ots$cvt_to_l ! OTS$CVT_TU_L ! ! Convert Unsigned Decimal Text to Integer ! ! The Convert Unsigned Decimal Text to Integer routine ! converts an ASCII text string representation of an unsigned ! decimal value to an unsigned byte, word, or longword value. By default, the ! result is a longword. Valid input characters are the space and the digits 0 ! through 9. No sign is permitted. ! INTEGER*4 ots$cvt_tu_l EXTERNAL ots$cvt_tu_l ! OTS$CVT_TZ_L ! ! Convert Hexadecimal Text to Unsigned Integer ! ! The Convert Hexadecimal Text to Unsigned Integer routine ! converts an ASCII text string representation of an unsigned ! hexadecimal value to an unsigned integer of an arbitrary length. ! The result is a longword by default, but the calling program can specify ! a byte, word, or longword ! value. ! INTEGER*4 ots$cvt_tz_l EXTERNAL ots$cvt_tz_l CDEC$ END OPTIONS