Overview
VX/FMS provides a native call-compatible implementation of OpenVMS Forms Management System. Forms compiler and FDV$ APIs for x86 and ARM Linux. It enables OpenVMS applications to define, generate, and manage native FMS Forms on Linux.
Key Features
• Fully compatible with OpenVMS FDL$ APIs.
• Supports file structure definition, parsing, and management.
• Allows seamless migration of OpenVMS applications relying on FDL$ routines.
• Integrates with VX/RT to provide full OpenVMS file definition capabilities on x86 and ARM Linux.
• Maintains OpenVMS file structure semantics to ensure consistent behavior on Linux.
VX/FDL$ Callable Routines
| FDV$ API |
Function |
| FDV$ADLVA | Allocate virtual address |
| FDV$AFCX | Access function |
| FDV$AFVA | Allocates a virtual address space |
| FDV$ATERM | Handles asynchronous terminal operations |
| FDV$AWKSP | Allocate workspace |
| FDV$BELL | Triggers an audible alert on the terminal |
| FDV$CANCL | Cancels a pending operation |
| FDV$CDISP | Change display mode |
| FDV$CLEAR | Clears screen or buffer contents |
| FDV$CLEAR_VA | Clears a virtual address mapping |
| FDV$DEL | Delete file |
| FDV$DFKBD | Defines keyboard mapping settings |
| FDV$DISP | Display data |
| FDV$DISPW | Displays wide-format output |
| FDV$DPCOM | Handles device protocol communications |
| FDV$DTERM | Terminal display function |
| FDV$DWKSP | Deallocate workspace |
| FDV$FCHAN | Manages file channel operations |
| FDV$FIX_SCREEN | Adjust screen display |
| FDV$GET | Retrieve data |
| FDV$GETAF | Retrieves allocated file attributes |
| FDV$GETAL | Retrieves allocation details for a file |
| FDV$GETDL | Retrieves directory listing data |
| FDV$GETSC | Retrieves screen settings |
| FDV$ILTRM | Initializes logical terminal settings |
| FDV$LCHAN | Lock channel |
| FDV$LCLOS | Close logical channel |
| FDV$LEDOF | Turn LED off |
| FDV$LEDON | Turn LED on |
| FDV$LOAD | Loads data into a specified location |
| FDV$LOPEN | Open logical file |
| FDV$NDISP | Initiates a new display operation |
| FDV$PFT | Process file transfer |
| FDV$PRINT_SCREEN | Print screen content |
| FDV$PUT | Write data |
| FDV$PUTAL | Writes allocation details to a file |
| FDV$PUTD | Writes data to a specified location |
| FDV$PUTDA | Writes formatted data to an output device |
| FDV$PUTL | Write logical data |
| FDV$PUTSC | Write screen data |
| FDV$READ | Read input |
| FDV$RET | Return from function |
| FDV$RETAL | Retrieves allocation details |
| FDV$RETCX | Return context info |
| FDV$RETDI | Return display info |
| FDV$RETDN | Returns device name information |
| FDV$RETFL | Retrieves file location details |
| FDV$RETFN | Return function result |
| FDV$RETFO | Retrieves file open status |
| FDV$RETLE | Returns length details of an entity |
| FDV$RFRSH | Refreshes the display or buffer |
| FDV$SCR_LENGTH | Retrieves screen length information |
| FDV$SCR_WIDTH | Retrieves screen width settings |
| FDV$SIGOP | Handles signal operations for processes |
| FDV$SPADA | Screen pad function |
| FDV$SPOFF | Turns off special function modes |
| FDV$SPON | Turns on special function modes |
| FDV$SSIGQ | Manages signal queue operations |
| FDV$SSRV | Handles screen service routines |
| FDV$STAT | Get status info |
| FDV$STERM | Sets terminal characteristics |
| FDV$STIME | Sets system or process time |
| FDV$SWKSP | Switches between workspace buffers |
| FDV$TCHAN | Terminate channel |
| FDV$USER_REFRESH | Refresh user display |
| FDV$WAIT | Wait for an event |
Why Use VX/FMS?
- Preserves OpenVMS FMS capability, enabling direct porting of applications.
- Provides full compatibility with OpenVMS FDV$ Forms management functions.
- Supports critical OpenVMS Forms definition workflows, including structure generation and parsing.
- Seamlessly integrates into the VX/RT ecosystem for OpenVMS compatibility on x86 and ARM Linux.
VX/FMS ensures that OpenVMS applications requiring FDV$ services can be migrated without major modifications, preserving productivity and minimizing development costs.