=:The OpenVMS Frequently Asked Questions(FAQ)C

The OpenVMS Frequently Asked Questions(FAQ)



 r \ ^  
PreviousContentsIndex



GLook at the contents of the DECDTLOGO.PM file and at other *.XPM files !and tools for additional details.R

11.7.1 How do I customize DECwindows keymapping?



BVarious keymaps can be implemented on OpenVMS and other X Windows @systems, allowing the implementation of a Dvorak-style or other @alternate keymappings. For details, see the available X Windows Cdocumentation (this is the documentation associated with X Windows Ditself, and not the product documentation for the OpenVMS operating Dsystem nor for the DECwindows X Windows implementation) and see the EDECwindows *.DECW$KEYMAP (text-format) files found in the DECwindows DECW$KEYMAP: directory.

YFor other keymapping information, see Section 11.7.2._

11.7.2 Why does the DELETE key delete forward instead of backward?



ASee the SET TERMINAL/BACKSPACE command on OpenVMS V8.1 and later.

EThis behaviour involves the Motif virtual key bindings. When a Motif Bapplication starts, it looks at the vendor string returned in the Edisplay connection information and attempts to match the string to a table of virtual bindings.

GYou can override the default bindings in your decw$xdefaults.dat file. AHere is the entry you would make to get the default VMS bindings.

 

"
*defaultVirtualBindings:\" osfCancel :  [F11] \n\! osfLeft :  [Left] \n\ osfUp  :  [Up] \n\# osfRight :  [Right] \n\! osfDown :  [Down] \n\( osfEndLine :Alt  [Right] \n\) osfBeginLine :Alt  [Left] \n\$ osfPageUp :  [Prior] \n\% osfPageDown :  [Next] \n\* osfDelete :Shift  [Delete] \n\& osfUndo :Alt  [Delete] \n\( osfBackSpace :  [Delete] \n\' osfAddMode :Shift  [F8] \n\! osfHelp :  [Help] \n\ osfMenu :  [F4] \n\# osfMenuBar :  [F10] \n\% osfSelect :  [Select] \n\) osfActivate :  [KP]_Enter \n\) osfCopy :Shift  [DRemove] \n\$ osfCut  :  [DRemove] \n\  osfPaste :  [Insert]




To merge:

 

"
 $ xrdb :== $decw$utils:xrdb.exe ($ xrdb -nocpp -merge decw$xdefaults.dat 




EAlso note that the DECW$UTILS:DECW$DEFINE_UTILS.COM procedure can be -used to establish the xrdb and other symbols.

@Also see the DECxterm directory of Freeware V5.0 for details on 2connecting to OpenVMS from various UNIX platforms.

^For other keymapping information, see Section 11.7.1.i

11.8 Why doesn't XtAppAddInput() work on OpenVMS?



GYes, XtAppAddInput() does work on OpenVMS. The MIT definition of the X BWindows call XtAppAddInput() includes platform-specific arguments.

GOn platforms where C is the typically the primary programming language Ffor the platform, the file descriptor mask is one of the arguments to the XtAppAddInput() call.

DOn OpenVMS, the platform-specific arguments to this call include an Hevent flag and an IOSB, as these are the traditional OpenVMS constructs Hused to synchronize the completion of asynchronous operations. While it Fwould be easier to port non-OpenVMS C code that calls XtAppAddInput() Fover to OpenVMS if the arguments included the C file descriptor, this Ewould make the call unusable from other OpenVMS languages, and would Emake it extremely difficult to use OpenVMS features such as ASTs and sys$qio calls.

FOne restriction on the event flag: the event flag chosen must be from Cevent flag cluster zero. When using the traditional lib$get_ef and lib$free_efHcalls to allocate and deallocate event flags, you must first explicitly Ccall lib$free_ef to free up some event flags in event flag cluster Fzero. Please see the event flag documentation for specific details on Dthese calls and for specific event flags that can be freed in event flag cluster zero.

FHere is some example code that covers calling this routine on OpenVMS:

 

"
#    m->InputID = XtAppAddInput(         m->AppCtx,         m->InputEF,         m->InputIosb,         the_callback, 1 ); "    if ( !((int) m->InputID )) 
        {         XtAppErrorMsg(             m->AppCtx,             "invalidDevice",             "XtAppAddInput",             "XtToolkitError", #            "Can't Access Device",             (String *) NULL, !            (Cardinal *) NULL );         ... 


w

11.9 Why do the keyboard arrow keys move the DECwindows cursor?



ECongratulations, you have just stumbled into "dead rodent" Gmode. This DECwindows environment---where the keyboard arrow keys move Athe mouse cursor and where the [SELECT], [PREV], and [NEXT] keys Gemulate the three mouse buttons---allows rudimentary system operations 'when the mouse is among the casualties.

DTo enter or exit "dead rodent" mode, enter the following: [CTRL/SHIFT/F3]h

11.10 Why does half my DECwindows display blank?



GThis is likely a result of receiving an OPCOM or other console message Hon a system that shares the system console with the DECwindows graphics workstation display.

4You can toggle off the console display window using =[CTRL/F2] and you can enable a serial console per lSection 14.3.6 or Section 14.3.3.3.

FAlso see the console message window application available with recent GDECwindows versions---DECwindows versions V1.2-3 and later will enable Hthis window by default. For details on this console message window, see %the DECW$CONSOLE_SELECTION option in -SYS$STARTUP:DECW$PRIVATE_APPS_SETUP.TEMPLATE.

>On older releases, you can disable output using the following:

 

"
+$ SET TERMINAL/PERMANENT/NOBROADCAST OPA0:  $ DEFINE/USER SYS$COMMAND OPA0: $ REPLY/DISABLE 




­Also see Section 14.3.3.2, Section 14.19, and Also see Section 8.3,x

11.11 %DECW-W-NODEVICE, No graphics device found on this system?



To resolve the following error:

 

"
:%DECW-W-NODEVICE, No graphics device found on this system ?-DECW-I-NODECW, DECwindows graphics drivers will not be loaded 






:Also see Section 11.5.f

11.12 How can I reset the warning bell volume?



@With DECwindows CDE drivers and ECOs starting with ECOs for the EDECwindows keyboard driver SYS$IKBDRIVER.EXE in OpenVMS Alpha V7.1-2 Gand V7.2-1 and with the SYS$IKBDRIVER.EXE included in OpenVMS V7.2-1H1 Eand later, the DECwindows CDE controls will now correctly manage the #setting of the warning bell volume.

EUnfortunately, the equivalent controls in the older DECwindows Motif Ginterface are not compatible and can no longer manage the warning bell volume.

GIf you need to manage the volume with DECwindows Motif, consider using the following approach:

 

"
 $ @decw$utils:decw$define_utils $ xset b 1 100 100 




?The numerics are the volume, pitch, and duration, respectively.

GWhy? When OpenVMS first started supporting the PC-style keyboards, the GX Windows Server and the keyboard driver interface did not support the Epitch and duration, and neither did DECwindows Motif. The DECwindows Ckeyboard driver was accordingly changed to use the volume from the Hkeyclick setting (keyclick is not available in a PC-style keyboard) and :the bell volume setting to control the pitch and duration.

GDECwindows CDE does provide sliders for setting pitch and duration, so Fthe keyboard driver and X Windows Server were modified to provide all Bof the information, and now the DECwindows CDE sliders work. This Echange is unfortunately incompatible with the old scheme used on the Hpre-CDE desktops, and the volume controls are now incompatible with the 0current keyboard drivers. Hence the use of xset.j

11.13 How can I alter the DECwindows CDE backdrop?



CTo select a separate backdrop to be displayed on each screen using DECwindows CDE:

n

11.14 How can I enable the DECwindows TCP/IP Transport



FTo configure the TCP/IP transport for DECwindows, first ensure that a DTCP/IP package is installed and configured. Then set the DCL symbol GDECW$SERVER_TRANSPORTS in SYS$MANAGER:DECW$PRIVATE_SERVER_SETUP.COM to Hthe appropriate local value, based on the comments in that file. If you Edo not have a copy of SYS$STARTUP:DECW$PRIVATE_SERVER_SETUP.COM, the @use the following COPY command to create this file based on the provided template file:

 

"
8$ COPY SYS$MANAGER:DECW$PRIVATE_SERVER_SETUP.TEMPLATE - 4$_ SYS$COMMON:[SYSMGR]DECW$PRIVATE_SERVER_SETUP.COM 


u

11.15 Can I use DECwindows 1.2-* on OpenVMS V7.3-2 or later?



The short answer is no.

GOpenVMS Alpha V7.3-2 only supports DECwindows Motif V1.3 and later. If Byou require DECwindows V1.2-6 or earlier, then you are limited to 8operations on OpenVMS Alpha V7.3-1 and earlier releases.

GThe central technical reason involves depdendencies among the parts of Ethe X11 subsystem that are delivered with the base OpenVMS operating Hsystem including the X Windows display server and the transport images, Fand the parts of the DECwindows product that are delivered within the DDECwindows installation kits including the client libraries and the DECwindows applications.

DDECwindows V1.3 and later made substantial changes to the transport Glayer, and these required corresponding changes to both the associated Eclient and server code. OpenVMS Alpha V7.3-2 includes the server and Htransport with the V1.3 modifications. These changes were in support of Gthe upgrade of Xlib from X11R5 to X11R6.6, and transport-level changes 9associated with support of the Kerberos and LBX features.

FIf you attempt to load DECwindows V1.2-6 images onto an OpenVMS Alpha HV7.3-2 or later system, the DECwindows libraries will not function with ?with system images and will particularly not function with the transport layer.b

11.16 How to add Fonts into DECwindows?



EThe following assumes DECwindows V1.3-1 and OpenVMS Alpha V7.3-2 and Glater unless stated otherwise, and can permit fonts of various formats ,to be added into the DECwindows environment.

EThe recommended location for user font files is to place them in the Cdirectories which are reserved for this purpose, typically located .below the SYS$COMMON:[SYSFONT.DECW] directory.

 

"
&SYS$COMMON:[SYSFONT.DECW.USER_100DPI] %SYS$COMMON:[SYSFONT.DECW.USER_75DPI] 




GThe above are recommended for PCF files of 100 Dots Per Inch (DPI) and #of 75 DPI resolution, respectively.

 

"
&SYS$COMMON:[SYSFONT.DECW.USER_COMMON] 




>The above is recommended for other PCF files, such as terminalA (character cell) fonts, and fonts used by specific applications.

 

"
(SYS$COMMON:[SYSFONT.DECW.USER_CURSOR16] (SYS$COMMON:[SYSFONT.DECW.USER_CURSOR32] 




&The above are recommended for cursors.

 

"
&SYS$COMMON:[SYSFONT.DECW.USER_SPEEDO] 




$SPEEDO is recommended for SPD files.

 

"
(SYS$COMMON:[SYSFONT.DECW.USER_TRUETYPE] 


6USER_TRUETYPE is recommended for TrueType (TTF) fonts.@Fonts placed in this directory should be in the "Windows / Linux" format.

FThe directory will contain the font files themselves, and a data file >that describes each font in the directory. This file is named DDECW$FONT_DIRECTORY.DAT or DECW$FONT_DIRECTORY_extension.DAT, where G"extension" is replaced by the type of font (100DPI, SPEEDO, TRUETYPE, TYPE1, etc.)

EMake sure that the file protection on the font files is set to allow world access to the fonts.

For example: to add TrueType-fonts to DECwindows, place the font files in 'SYS$COMMON:[SYSFONT.DECW.USER_TRUETYPE]

)A directory listing might look like this:

 

"
2Directory SYS$COMMON:[SYSFONT.DECW.USER_TRUETYPE]   QARKOI8N.TTF;1                            46KB/48KB        5-MAR-1995 04:00:00.00 Qbackstage.ttf;1                          55KB/56KB       19-JUL-2004 09:42:20.92 QIDAutomationHC39M_Free.ttf;1             27KB/32KB       29-JUL-2003 11:25:48.00 ... Qtexsi.ttf;1                             133KB/136KB      25-MAY-2003 15:31:11.00 Qtexw.ttf;1                              150KB/152KB      25-MAY-2003 15:32:33.00  !Total of 37 files, 3.09MB/3.23MB 




*The case of the filename is not important.

2TrueType fonts should be in Stream_LF file format.

GTo generate the appropriate DECW$FONT_DIRECTORY.DAT file for most font formats, issue the command:

 

"
$ FONTCOMPILER /DIRECTORY 




CThe above may or may not operate with TrueType files, and you will Blikely have to generate the DECW$FONT_DIRECTORY_TRUETYPE.DAT file manually. A sample file follows:

 

"
37 FBACKSTAGE.ttf -Grfonts-Backstage-bold-r-normal--0-0-0-0-p-0-iso8859-1 [IDAutomationHC39M_Free.ttf -IDAutomation-HC39M-medium-r-normal--0-0-0-0-m-0-misc-Barcode39 CSUSESerif-Bold.ttf -Suse-Suse-bold-r-normal--0-0-0-0-p-0-iso8859-1 FSUSESerif-Roman.ttf -Suse-Suse-medium-r-normal--0-0-0-0-p-0-iso8859-1 FSUSESans-Bold.ttf -Suse-Suse-bold-r-normal-sans-0-0-0-0-p-0-iso8859-1 MSUSESans-BoldOblique.ttf -Suse-Suse-bold-o-normal-sans-0-0-0-0-p-0-iso8859-1 KSUSESans-Oblique.ttf -Suse-Suse-medium-o-normal-sans-0-0-0-0-p-0-iso8859-1 ISUSESans-Roman.ttf -Suse-Suse-medium-r-normal-sans-0-0-0-0-p-0-iso8859-1 OSUSESansMono-Bold.ttf -Suse-Suse Mono-bold-r-normal-sans-0-0-0-0-m-0-iso8859-1 ... JMCTIMEBI.TTF -UOregon-MAC C Times-bold-i-normal--0-0-0-0-p-0-macedonian-0 KMCTIMEI.TTF -UOregon-MAC C Times-medium-i-normal--0-0-0-0-p-0-macedonian-0 




DThe first line of this data file is the number of font file entries Dwhich follow. Each entry consists of the font file name, and a font Hdescription. There are fourteen fields in the description, separated by Fhyphens (dashes, "-"). Fields may contain embedded spaces. The fields are



DThe next step is to update the list of fonts 'known' to DECwindows, using the xset utility.

 

"
$ mc decw$utils:xset fp rehash 




:It is also possible to reset the font list to the default:

 

"
 $ mc decw$utils:xset fp default 




2This is useful if you need to recover from errors.

4The Notepad utility, normally available through the F"Applications" menu in Session Manager, is a convenient way ?to see if the font is available. Start the application, select ="Options", then select "Font...". In the D"Family (Foundry)" window, you will see the list of fonts Davailable. User-added TrueType fonts will normally be at the end of Fthis list. Select the desired font family, then select the Size (dpi) E(which will always be 0(0) for TrueType fonts), and the various font Goptions (Weight, Slant, Width, etc.) should appear in the next window. EYou should then be able to select the desired font and click "OK" or A"Apply" to use it, or "Cancel" to exit without changing the font.

CIf you don't see all of the fonts you added, check to see that the @number at the beginning of the DECW$FONT_DIRECTORY*.DAT file is Fcorrect, that the files are set to world (or appropriate) access, and ,that TrueType fonts are in Stream_LF format.

ESome applications require entering a full font name, which will look like the font description entry.

GPlease keep in mind that not all applications can use every font which Emay be available on your system. For example, DECterm is designed to ?use families of fonts specifically designed for character cell Happlications. Other fonts (specifically TrueType) may work erratically, >and may result in an unusable display. It is best to use only @monospaced fonts specifically intended for DECterm with DECterm.

EThe SYS$COMMON:[SYSFONT.DECW.USER_TRUETYPE] doesn't exist on OpenVMS HVAX V7.3 with DECwindows V1.2-6, but the procedure above does appear to @work if the directory is created and the instructions above are followed.




 r Y \ ^  
PreviousNextContentsIndex