Software Product Description ___________________________________________________________________ PRODUCT NAME: HPBASIC for OpenVMS SPD 25.36.40 This Software Product Description describes the following products: o HP BASIC Version 1.7 for OpenVMS Alpha Systems (formerly Compaq BA- SIC) o HP BASIC Version 3.9 for OpenVMS VAX Systems (formerly Compaq BA- SIC) o HP BASIC Version 1.7 for OpenVMS I64 Integrity Systems The short forms "Alpha BASIC", "VAX BASIC", and "I64 BASIC" are fre- quently used to refer to these product names. DESCRIPTION HP BASIC is a shareable language processor for the OpenVMS operating system. It can be invoked as a compiler and the resulting modules can be linked and run with standard OpenVMS commands. HP BASIC provides high performance for application development by generating inline na- tive mode instructions. HP BASIC is also integrated with various pro- gramming productivity tools such as the OpenVMS Debugger, the Language- Sensitive Editor (LSE), the Source Code Analyzer (SCA) and the Per- formance and Coverage Analyzer. Alpha BASIC and I64 BASIC include three IEEE floating point data types (SFLOAT, TFLOAT, and XFLOAT) and a QUAD integer data type. September, 2007 FEATURES HP BASIC is integrated into the Common Language Environment. This in- tegration provides HP BASIC users with: o Support for OpenVMS interlanguage calling standard o Access to all OpenVMS system services o Access to the facilities of the OpenVMS Debugger o Callable interfaces to the OpenVMS Run-Time Library o Support for the Language-Sensitive Editor o Structured programming constructs - Line numbers completely optional. - DECLARE statement which removes requirement for (%) and ($) suf- fixes. - IF...THEN...ELSE...END IF conditional blocks. - SELECT...CASE...END SELECT multi-way decision blocks. - OTHERWISE out-of-range clause for ON GOTO and ON GOSUB state- ments. - Structured exception handling (WHEN blocks) for main and sub- programs. - Statement modifiers to control the execution of a single state- ment. - PROGRAM, SUB, and FUNCTION statements to declare program mod- ules. - END and EXIT PROGRAM statements to return a status to DCL. o Modern programming language features - Uses the full printable ASCII character set and 8-bit charac- ter codes within constants and I/O operations. - 31 character alphanumeric statement labels. 2 - 31 character variable names, allowing ($), (_) and (.). - RECORD structure for user-defined data types (similar to PAS- CAL record types), including RECORD structure retrieval from the Common Data Dictionary. - OPTION statement specifing compiler defaults within source mod- ules. o Program segmentation - SUB and FUNCTION subprograms as individually compiled modules. - Ability to pass parameters by value, reference, or descriptor. - Up to 254 actual arguments per call on external modules. - Ability to invoke EXTERNAL function procedures from HP BASIC. - Recursive CALL/function invocation. - Ability to invoke OpenVMS System Service and Run-Time Library routines. - Ability to invoke subprograms and function programs written in other OpenVMS native mode languages. - HP BASIC program modules invoked by other OpenVMS languages. - Ability to pass optional arguments to non-BASIC procedures. - Single and multiple line user-defined functions using DEF. - COMMON and MAP statements for creating static storage areas for communication between program modules. o Graphics - VAX BASIC only - Statements modeled after ANSI BASIC Graphics. - Implemented using GKS for OpenVMS to provide device independence. - Graphic output primitives including points, lines, areas, and text. - Graphic input types including points, menu choice, value selec- tion, and text. 3 - Ability to adjust the range of coordinate values to suit the ap- plication. - SET and ASK statements to specify and retrieve graphic attribute values. - Graphic procedures (PICTURE subprograms) for building complex objects. - Ability to apply transformations to PICTURE procedures. o Full access to OpenVMS Record Management Services (RMS) - Sequential I/O - Relative I/O - Multiple key Indexed I/O operations, including support for in- teger (word, longword and quadword), string, segmented string keys, packed decimal keys, and descending keys - Random access to sequential fixed files - Virtual arrays (arrays mapped onto disk structures) - Record File Address (RFA) access for direct access to records o Extended report formatting capabilities - Suppression of zero fields. - Zero fill, blank fill, or asterisk fill numeric fields. - Commas in large numeric values. - CR (credit) or DR (debit) indicators. - Floating currency symbol for numeric fields. - Currency and decimal symbols changed for foreign usage. - FORMAT$ function accepting full PRINT USING editing syntax. o Implicit or explicit storage declarations - Specification of data types permitted on COMMON, DECLARE, DEF, DIMENSION, EXTERNAL, FUNCTION, MAP, RECORD and SUB statements. 4 - Default data allocation rules specified with DCL qualifiers, HP BASIC commands, or by the OPTION statement in program text. - By default all declarations implicit, however, the OPTION TYPE = EXPLICIT can be used to require explicit declaration of all variables. - Default constant types specified with the OPTION CONSTANT TYPE statement. - INTEGER data type including: * BYTE (8 bit) * WORD (16 bit) * LONG (32 bit) * QUAD (64 bit)-Alpha and I64 BASIC only - REAL data type including: * SINGLE (6 digits)- VAX FFLOAT, I64 BASIC uses SFLOAT for computations * DOUBLE (16 digits)-VAX DFLOAT, Alpha BASIC uses GFLOAT for computations. I64 BASIC uses TFLOAT for computations * GFLOAT (15 digits) * HFLOAT (33 digits)-VAX BASIC only * SFLOAT (6 digits)-an IEEE data type; Alpha and I64 BASIC only * TFLOAT (15 digits)-an IEEE data type; Alpha and I64 BASIC only * XFLOAT (33 digits)-an IEEE data type; Alpha and I64 BASIC only - Packed DECIMAL type supporting up to 31 digits. - STRING data type, allowing both static (in MAP or COMMON state- ments) and dynamic lengths. - Creation of user-defined named constants through DECLARE CON- STANT. - Dynamic record definition and variable allocation via MAP DY- NAMIC. 5 o VAX BASIC Environment-VAX BASIC only - RUN command for immediate execution of HP BASIC programs. - EDIT command can invoke a user-selected editor directly. - HELP for online assistance. - SEQUENCE command for generating line numbers. - RESEQUENCE command for renumbering program lines. - Direct execution of HP BASIC statements (immediate mode). - Direct execution of DCL statements. - Optional line-by-line syntax checking. - Dynamic linking (LOAD) of separately compiled HP BASIC modules for use with the RUN command. - User-created libraries searched automatically when using RUN. o Compile-time directives - Text inclusion through %INCLUDE, %INCLUDE %FROM %CDD and %IN- CLUDE from a text library - Conditional compilation (%IF) - Listing and output control (%NOLIST, %LIST) - Cross-reference output control (%CROSS) - Text replacement (%DEFINE) o EXTERNAL statement allowing access to global variables, functions, and constants, and allowing data typing of parameters to aid in min- imizing run-time mismatches. o Language subsets and subset flaggers for cross system development /migration-VAX BASIC only - Flagger showing feature unavailable on Alpha BASIC - Flagger showing use of old BASIC-PLUS-2 feature 6 o Motif bindings support o Multiple line statements and multiple statement lines o Extensive array handling capabilities - Each array may have up to 32 dimensions. - Each dimension may specify both a lower and upper bound. - Array bounds can be specified at compile time or run time. - Matrix handling statements allow manipulation of matrices, in- cluding matrix multiplication. o Compatibility with key RSTS/E BASIC-PLUS and BASIC-PLUS-2 features including: - ON ERROR GOTO exception handling - FIELD Statement - CVT and SWAP% functions - Virtual arrays - Selected nonprivileged SYS calls - Statement modifiers for conditionals and loops o HP BASIC Translator for OpenVMS Alpha only (see SPD 64.76.XX) HARDWARE REQUIREMENTS Processors Supported: Any Alpha system capable of running the OpenVMS Alpha operating sys- tem Version 6.2 to 8.3-1H1 or any VAX capable of running the OpenVMS operating system V5.5-2 to 7.3. With OpenVMS Integrity, we support any Integrity server running OpenVMS operating system Version 8.2-1 to 8.3- 1H1. 7 Refer to the OpenVMS operating system's Software Product Description (SPD 82.35.xx) for details. Disk Space Requirements (Block Cluster Size = 1): For Integrity Systems: Disk space required for 53,500 blocks (27.4 MB) installation: Disk space required for 45,500 blocks (23.0 MB) use (permanent): For Alpha systems: Disk space required for 32,500 blocks (16.6 MB) installation: Disk space required for 24,500 blocks (12.5 MB) use (permanent): For VAX systems: Disk space required for 13,000 blocks (6.7 MB) installation: Disk space required for 11,000 blocks (5.6 MB) use (permanent): These counts refer to the disk space required on the system disk. The sizes are approximate; actual sizes may vary depending on the user's system environment, configuration, and software options. OPTIONAL HARDWARE Floating-point intensive applications should be run on configurations with the appropriate hardware support for the floating-point data types being used. Consult the base operating system Software Product Descrip- tion (SPD 82.35.xx) for the Floating-Point Accelerator or other floating- point hardware appropriate for your configuration. 8 SOFTWARE REQUIREMENTS For Alpha Systems: o OpenVMS Alpha operating system, Version 6.2 to 8.3-1H1. IEEE float- ing point and QUAD support requires Version 7.1 to 8.3-1H1. For VAX Systems: o OpenVMS VAX operating system, Version 5.5-2 to 7.3 For I64 Systems: o OpenVMS I64 operating system, Version 8.2-1 to 8.3-1H1 SOFTWARE LICENSING A software license is required in order to use HP BASIC software. For VAX and Alpha platforms, HP BASIC is offered with Concurrent Use, Per- sonal Use and Traditional 'capacity' licenses. For I64, it is offered with Concurrent Use licenses. Version update licenses are not avail- able for the I64 platform. Rights to use future revisions of HP BA- SIC are available only through a Support Agreement or through a new license purchase. For more information about OpenVMS license terms and policies, contact your local HP sales office, or reference the Soft- ware Licensing site at: LICENSE MANAGEMENT FACILITY SUPPORT This layered product supports the OpenVMS License Management Facil- ity. License units for BASIC on OpenVMS Alpha and VAX are allocated on a Capacity Use plus Personal and Concurrent Use basis. For BASIC on Open- VMS I64 are allocated on Concurrent Use basis. Each Personal Use license allows one identified individual to use the layered product. Each Concurrent Use license allows any one individ- ual at a time to use the layered product. 9 For more information on the License Management Facility, refer to the OpenVMS Operating System Software Product Description or the License Management Facility manual of the OpenVMS Operating System documen- tation set. CLUSTER ENVIRONMENT This layered product is fully supported when installed on any valid and licensed OpenVMS Cluster configuration without restrictions. The HARDWARE REQUIREMENTS section of this product's Software Product De- scription detail any special hardware required by this product. Open- VMS Cluster configurations are fully described in the OpenVMS Clus- ter Software Product Description (29.78.xx) and include CI, Ethernet, and Mixed Interconnect configurations. OPTIONAL SOFTWARE Refer to the appropriate Software Product Description for details and requirements on the products listed below. o Language-Sensitive Editor component of the Language-Sensitive Ed- itor/Source Code Analyzer o Performance and Coverage Analyzer (PCA) Required to fully use the /ANALYSIS_DATA qualifier: o Source Code Analyzer component of Language-Sensitive Editor/Source Code Analyzer Language-Sensitive Editor/Source Code Analyzer, Performance and Cov- erage Analyzer are available as part of DECset for OpenVMS Systems (SPD 42.29.xx.) To use %INCLUDE %FROM %CDD or the %REPORT %DEPENDENCY directives and the /DEPENDENCY_DATA qualifier: o Oracle CDD/Repository[TM] To use VAX BASIC graphics statements: (VAX BASIC only) 10 o GKS for OpenVMS Version 5.0-Version 6.4 Development or Run-Time Li- cense Required to fully use the /DESIGN qualifier: (VAX BASIC only) o Both components of Language-Sensitive Editor/Source Code Analyzer Language-Sensitive Editor/Source Code Analyzer is available as part of DECset for OpenVMS Systems. Refer to DECset For OpenVMS Alpha Sys- tems Sofware Product Description (SPD 42.29.xx) or DECset for Open- VMS VAX Systems Software Product Description (SPD 27.07.xx) GROWTH CONSIDERATIONS The minimum hardware and software requirements for any future version of this product may be different from the requirements for the cur- rent version. DISTRIBUTION MEDIA HP BASIC for OpenVMS Alpha: HP BASIC for OpenVMS Alpha is available on the OpenVMS Alpha Software Products Layered Library Package (QA-03XAA-H8). The library package includes media and documentation on CD-ROM. A hardcopy documentation set can be ordered separately (QA-0Y7AA-GZ). HP BASIC for OpenVMS VAX: Compaq BASIC for OpenVMS VAX is available on the OpenVMS VAX Software Layered Products Library Package (QA-5G88A-H8). The library package includes media and documentation on CD-ROM. A hardcopy documentation set can be ordered separately (QA-095AA-GZ). HP BASIC OpenVMS I64: HP BASIC for OpenVMS I64 is available on the Layered Products media within the Operating Environment package. The Layered Products media includes the product binaries and on-line documentation. An optional hardcopy documentation kit is also offered. 11 SOFTWARE WARRANTY This software is provided by HP with a 90 day conformance warranty in accordance with the HP warranty terms applicable to the license pur- chase. ORDERING INFORMATION When purchasing HP BASIC both a license and media must be ordered. The license deliverable provides the LMF PAK required to run the HP BA- SIC software. The VMS Operating System or Operating Environment (li- cense and media) is a prerequisite to running HP BASIC. HP BASIC for OpenVMS Alpha Systems: Software Licenses: Personal Use: QL-095AA-2B Concurrent Use: QL-095AA-3* Capacity Use: QL-0Y7A*-** Software Media/Documentation: QA-03XAA-H8 Software Documentation (hardcopy): QA-0Y7AA-GZ Compaq BASIC for OpenVMS VAX Systems: Software Licenses: Personal Use: QL-095AA-2B Concurrent Use: QL-095AA-3* Capacity Use: QL-095A*-** Software Documentation (hardcopy): QA-095AA-GZ HP BASIC for OpenVMS Alpha ONLY: Software Licenses: Personal Use: QL-015AA-** Concurrent Use: QL-015AA-** Traditional/Capacity Use: QL-MU7A*-** Software Media/Documentation: QA-MU7AA-H8 Software Documentation (Hard Copy): QA-MU7AA-GZ 12 HP BASIC for OpenVMS I64 ONLY: Software Licenses: Concurrent Use: BA347AC Software Media: Foundation Operating Media, BA322AA or Enterprise Operating Media, BA323AA or Mission Critical Media, BA324AA Software Documentation (Hard Copy): BA347MN An example of a new order for HP BASIC: Concurrent Use License - BA347AC Binaries: Operating Environment Media - BA32*A Software Updates Service: BA347AA + HA156AC Technical Support Service: HA158AC Hardcopy Documentation Kit (Optional) BA347MN Software Support Services: The following packages, that combine Software Technical Support and Software Updates services, are available with a new product sale for OpenVMS Alpha and OpenVMS I64: HP Software Support 9X5, 1 year: HA106A1 HP Software Support 9X5, 3 years: HA106A3 HP Software Support 24X7, 1 year: HA107A1 HP Software Support 24X7, 3 years: HA107A3 An example of a new order for HP BASIC for OpenVMS I64 with a 24X7, 3 year Software Support service: Concurrent Use License - BA347AC+HA107A3 Binaries: Operating Environment Media - BA32*A+HA107A3 Hardcopy Documentation Kit (Optional) - BA347MN For more information on the Operating Environments, please see the HP Operating Environments for OpenVMS I64 SPD: 82.34.** The "*" denotes variant fields. 13 The ordering information is valid at time of release. Please contact your local HP office for the most up-to-date information. SOFTWARE PRODUCT SERVICES A variety of service options are available from HP. For more infor- mation, contac your local HP account representative or distributor. Information is available on www.hp.com/hps/software. TRADEMARKS © 2007 Hewlett-Packard Development Company, L.P. Confidential computer software. Valid license from HP and/or its sub- sidiaries required for possession, use, or copying. Consistent with FAR 12.211 and 12.212, Commercial Computer Software, Computer Soft- ware Documentation, and Technical Data for Commercial use. The information contained herein is subject to change without notice. The only warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing here in should be construed as constituting an additional war- ranty. HP shall not be liable for technical or editorial errors or omis- sions contained herein. 14 15