Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Starbase Device Drivers Manual - Vol1: HP 9000 Series 700 Computers > Chapter 8 The PersonalVRX Device Driver

Usage and Restrictions

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Index

hp98704

In no case does the hp98704 driver support:

  • Z-buffering.

  • Shading.

  • The transform engine.

Use the hp98705 driver to access these features.

When a gopen is done of an X window in the overlay planes, the driver does not support:

  • Bank switching.

  • Double-buffering.

hp98705

Up to sixteen unique gopen calls, using the hp98705 driver, may be executed on the same device simultaneously, from any combination of one or more processes.

hp98704 Transparency

In X windows Combined mode, the X server reserves the highest color map entry for transparency (7 or 15, depending on whether three or four overlay planes have been opened). When an X window is opened by a Starbase program, the environment variable is ignored, and the driver uses the same transparency index that the X server is using.

In X windows Overlay mode, the X server does not set a default a transparent color. The hp98704 driver, in an Overlay mode window, sets all entries dominant when the gopen call is executed. An explicit call to define_color_table, or use of the INIT flag in a call to shade_mode or double_buffer, will cause transparent entries to be set back to dominant. When running in Combined mode, the server's transparent entry cannot be made dominant.

Cursors

The hp98704 and hp98705 device drivers implement cursors using a combination of the hardware cursor and software cursors. If no processes have opened all four overlay planes, then the fourth overlay plane is used for software cursors.

The hardware cursor always appears "over" data in any of the frame buffer planes.

You can think of the fourth overlay plane used for cursors as a separate "cursor plane". Any data in the cursor plane will be displayed "over" data in the graphics planes. Data in the other three overlay planes will be displayed "over" data in the graphics planes and the cursor plane. For example, suppose a graphics application is running in the graphics planes while the window manager is running in three of the overlay planes. If the application has a Starbase cursor in the overlay cursor plane, then the cursor will always be visible inside regions of see-thru because the cursor has display priority over the graphics. If the cursor is moved outside of regions of see-thru then it is not visible since the non-see-thru regions in the overlay planes have display priority over the cursor plane.

The PersonalVRX supports a hardware cursor that is sufficient for all Starbase echo types except rubber-band lines and rectangles. (Rubber-band cursors are supported in software.) Only one hardware cursor is available. Usage of the hardware cursor is defined as follows:

  1. By default, if X windows are running, then the window system gets usage of the hardware cursor.

  2. The user can control the usage of the hardware cursor via the gescape opcode R_ECHO_CONTROL. (Refer to the gescape appendix in this manual.)

If the hardware cursor is already being used by another process, then overlaid software cursors are used by the hp98704 driver for vector cursors, and the opened planes are used for raster cursors. If the fourth overlay plane is not available for cursors, then the opened planes are used for all cursor types. Note that the hardware cursor can only support two-color raster cursors; if full-color cursors are needed, the R_ECHO_CONTROL gescape must be employed to enforce the use of the opened planes for raster cursors.

The hp98705 driver uses the overlaid software cursors if the hardware cursor is already being used by another process. If the fourth overlay plane is not available for cursors, then the devices best echo is used when a raster cursor is attempted.

If a process is using the hardware cursor and it switches to rubber-band cursors, it retains control of the hardware cursor, but the cursor is drawn in the frame buffer (either the fourth overlay plane or the opened planes) using software routines. When the process switches to an appropriate type of cursor, it will again use the hardware cursor. If a user's application never uses hardware-type cursors, then the driver will never attempt to allocate the hardware cursor. However, once the driver has allocated the hardware cursor, the driver does not relinquish control of the hardware cursor until gclose is executed. While it is not being used, it simply remains inactive, but no other process can use the hardware cursor once it has been assigned to a process.

If allocation of the hardware cursor is not successful, or the gescape is used to force software cursors, then resources for the software cursors are allocated (eg., offscreen areas for raster echo definitions).

The following functions will cause the driver to attempt to allocate cursor resources (that is, either the hardware cursor or software cursor resources):

  • echo_type or define_raster_echo.

  • Any of the gescapes:

    • R_DEF_ECHO_TRANS

    • R_ECHO_MASK

    • R_ECHO_FG_BG_COLORS

    • R_OV_ECHO_COLORS

    • R_OVERLAY_ECHO

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1989 - 1995 Hewlett-Packard Development Company, L.P.