HP OpenVMS Systems Documentation

Content starts here

OpenVMS Programming Concepts Manual

Previous Contents Index

Part 4
Part 4 OpenVMS Programming Interfaces: Calling a System Routine
Chapter 17
17 Call Format to OpenVMS Routines
     17.1     Overview
     17.2     Format Heading
         17.2.1         Procedure Call Format
         17.2.2         JSB Call Format (VAX only)
     17.3     Returns Heading
         17.3.1         Condition Values Returned in a Register
         17.3.2         Other Returned Values
         17.3.3         Condition Values Signaled
     17.4     Arguments Heading
         17.4.1         OpenVMS Usage Entry
         17.4.2         Type Entry
         17.4.3         Access Entry
         17.4.4         Mechanism Entry
         17.4.5         Explanatory Text
     17.5     Condition Values Returned Heading
         17.5.1         Condition Values Returned
         17.5.2         Condition Values Returned in an I/O Status Block
         17.5.3         Condition Values Returned in a Mailbox
         17.5.4         Condition Values Signaled
Chapter 18
18 Basic Calling Standard Conventions
     18.1     Hardware Registers
         18.1.1         Register Usage for OpenVMS VAX
         18.1.2         Register Usage for OpenVMS Alpha
                Integer Registers
                Floating-Point Registers
     18.2     Stack Usage for Procedures
         18.2.1         Stack Procedure Usage for VAX
                Calling Sequence
                Call Frames on Return
         18.2.2         Stack Procedure Usage for Alpha
                Fixed-Size Stack Frame
                Variable-Size Stack Frame
     18.3     Procedure Representation
     18.4     Argument List
     18.5     Argument Passing Mechanisms
         18.5.1         Passing Arguments by Value
         18.5.2         Passing Arguments by Reference
         18.5.3         Passing Arguments by Descriptor
     18.6     Passing Scalars as Arguments
     18.7     Passing Arrays as Arguments
     18.8     Passing Strings as Arguments
     18.9     Combinations of Descriptor Class and Data Type
     18.10     Return of the Function Value
     18.11     Return of the Condition Value
Chapter 19
19 Calling Run-Time Library Routines
     19.1     Overview
     19.2     Call Instructions
         19.2.1         Facility Prefix and Routine Name
         19.2.2         The RTL Call Entry
                JSB Call Entries (VAX Only)
         19.2.3         Returns from an RTL Routine
                Facility Return Status and Condition Value Symbols
     19.3     Calling a Library Procedure in VAX MACRO (VAX Only)
         19.3.1         VAX MACRO Calling Sequence
         19.3.2         VAX MACRO CALLS Instruction Example
         19.3.3         VAX MACRO CALLG Instruction Example
         19.3.4         VAX MACRO JSB Entry Points
         19.3.5         Return Status
         19.3.6         Function Return Values in VAX MACRO
     19.4     Calling a Library Routine in BLISS
         19.4.1         BLISS Calling Sequence
         19.4.2         Accessing a Return Status in BLISS
         19.4.3         Calling JSB Entry Points from BLISS
Chapter 20
20 Calling System Services
     20.1     Overview
     20.2     Preserving System Integrity
         20.2.1         User Privileges
         20.2.2         Resource Quotas
         20.2.3         Access Modes
     20.3     System Service Call Entry
     20.4     System Service Completion
         20.4.1         Asynchronous and Synchronous System Services
         20.4.2         System Service Resource Wait Mode
         20.4.3         Condition Values Returned from System Services
         20.4.4         Testing the Condition Value
         20.4.5         Special Condition Values Using Symbolic Codes
         20.4.6         Testing the Return Condition Value for Assembly Languages
         20.4.7         System Messages Generated by Condition Values
     20.5     Program Examples with System Service Calls
Chapter 21
21 STARLET Structures and Definitions for C Programmers
     21.1     SYS$STARLET_C.TLB Equivalency to STARLETSD.TLB
     21.2     NEW STARLET Definitions for C
Part 5
Part 5 I/O, System and Programming Routines
Chapter 22
22 Run-Time Library Input/Output Operations
     22.1     Choosing I/O Techniques
     22.2     Using SYS$INPUT and SYS$OUTPUT
         22.2.1         Default Input and Output Devices
         22.2.2         Reading and Writing to Alternate Devices and External Files
     22.3     Working with Simple User I/O
         22.3.1         Default Devices for Simple I/O
         22.3.2         Getting a Line of Input
         22.3.3         Getting Several Lines of Input
         22.3.4         Writing Simple Output
     22.4     Working with Complex User I/O
         22.4.1         Compaq DECwindows Motif
                DECwindows Server Height or Width Exceeding 32767 (VAX Only)
                SET DISPLAY Used to Create WSA Pseudo Workstation Devices
         22.4.2         SMG$ Run-Time Routines
         22.4.3         Pasteboards
                Erasing a Pasteboard
                Deleting a Pasteboard
                Setting Screen Dimensions and Background Color
         22.4.4         Virtual Displays
                Creating a Virtual Display
                Pasting Virtual Displays
                Rearranging Virtual Displays
                Removing Virtual Displays
                Modifying a Virtual Display
                Using Spawned Subprocesses
         22.4.5         Viewports
         22.4.6         Writing Text to Virtual Display
                Positioning the Cursor
                Writing Data Character by Character
                Writing Data Line by Line
                Drawing Lines
                Deleting Text
         22.4.7         Using Menus
         22.4.8         Reading Data
                Reading from a Display
                Reading from a Virtual Keyboard
                Reading from the Keypad
                Reading Composed Input
         22.4.9         Controlling Screen Updates
         22.4.10         Maintaining Modularity
     22.5     Performing Special Input/Output Actions
         22.5.1         Using Ctrl/C and Ctrl/Y Interrupts
         22.5.2         Detecting Unsolicited Input
         22.5.3         Using the Type-Ahead Buffer
         22.5.4         Using Echo
         22.5.5         Using Timeout
         22.5.6         Converting Lowercase to Uppercase
         22.5.7         Performing Line Editing and Control Actions
         22.5.8         Using Broadcasts
                Default Handling of Broadcasts
                How to Create Alternate Broadcast Handlers

Previous Next Contents Index