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 4 The CRX Family of Device Drivers

Starbase Functionality

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Index

Calls not Supported

The hpgcrx driver does not support the following Starbase calls if you are using Starbase without the PowerShade software. When executed, these calls will produce no result (i.e. they are no-ops).

alpha_transparency               hidden_surface
backface_control light_ambient
bf_alpha_transparency light_attenuation
bf_control light_model
bf_fill_color light_switch
bf_interior_style line_filter
bf_perimeter_color perimeter_filter
bf_perimeter_repeat_length set_capping_planes
bf_perimeter_type set_model_clip_indicator
bf_surface_coefficients set_model_clip_volume
bf_surface_model surface_coefficients
bf_texture_index surface_model
contour_enable texture_index
define_contour_table texture_viewport
define_texture texture_window
define_trimming_curve viewpoint
deformation_mode zbuffer_switch

PowerShade or CRX-24Z on CRX-24

The following calls are not supported when using the CRX-24Z or PowerShade 3D Surfaces Software with CRX-24:

bf_texture_index
contour_enable
define_contour_table
define_texture
deformation_mode
texture_index
texture_viewport
texture_window

In addition, line_filter and perimeter_filter are not supported on the CRX-24.

Using PowerShade on CRX, Dual CRX or High Resolution Integrated Graphics Color

The following calls are not supported when using PowerShade on the CRX, Dual CRX or High Resolution Integrated Graphics (HP 705/710/715/725) Color:

alpha_transparency
bf_alpha_transparency
bf_texture_index
contour_enable
define_contour_table
define_texture
deformation_mode
line_filter
perimeter_filter
texture_index
texture_viewport
texture_window

Conditional Support of Starbase Calls

The following calls are supported with the listed exceptions:

alpha_ transparency

Alpha transparency is supported only on the CRX-24Z. Alpha only applies to filled areas such as polygons, quadrilateral meshes, triangular strips, and spline surfaces. Alpha per vertex is not supported. Vector primitives are not rendered with alpha_transparency. The alpha_transparency feature is limited to CMAP_FULL in the 12/12 or 24-plane configurations. Only the floating point version of these primitives will be rendered with alpha transparency; device coordinate primitives do NOT use alpha. The CRX-24Z does not support alpha transparency with attenuation. (See the manpage on alpha_transparency for parameters in the Starbase Reference Manual).

block_read, block_write

The raw parameter for the block_read and block_write commands is used by this driver to do plane-major reads and writes. It is enabled by the gescape R_BIT_MODE.

The storage supplied by the user as the source or destination must be organized as follows.

  • The data from each plane is packed with eight pixels per byte.

  • Each row must begin on a byte boundary. Thus the size of the rectangle as specified by the 〈length_x〉 and 〈length_y〉 parameters must correspond to an integral number of bytes.

  • The data for the next plane begins on the following byte boundary.

  • Clip to the screen limits.

  • The first pixel in the source rectangle is placed in the high-order bit of the first byte in each plane region.

  • When clipping, part of each plane region will not be read (block_read) or altered(block_write).

A bit mask selects the planes to read or write. The initial value of this mask is 1 (one) indicating that only plane 0 is to be accessed. The value of the mask may be changed using the R_BIT_MASK or GR2D_PLANE_MASK gescapes. GR2D_PLANE_MASK is discussed in the appendix of this manual. The planes selected by the mask are expected to reside in consecutive plane locations in the user storage area. This reduces the storage requirements to exactly what is needed but also presents the potential for addressing violations or undesirable results.

For example, if the plane mask is changed to specify more planes between a block_read and a following block_write from the same location, the block_write will attempt to access storage for planes that were not read (and perhaps not allocated). The application program must ensure consistency in these operations.

line_filter, perimeter_ filter

Antialiasing is supported only on the CRX-24Z. Antialiasing for this device applies only to floating point vectors. Device coordinate primitives do not use antialiasing. The antialiasing features are also limited to the CMAP_FULL color map mode in the 12/12 or 24-plane configurations.

The CRX-24Z has two antialiasing modes that may be specified with the line_filter and perimeter_filter procedures. The index values are assigned as follows:

0

Anti-aliasing disabled, all vectors have one pixel wide output.

1

Anti-aliasing enabled, all vectors have three pixel wide output. Pixel values are multiplied by the alpha value and blended with the background according the the formula:

pixel_color= (new_pixel × α) + (old_pixel × (1 - α));

2

Anti-aliasing enabled, all vectors have three pixel wide output. Pixel values are multiplied by the alpha value, but are NOT blended with the background.

pixel_color = (new_pixel × α);

pattern_ define

The maximum pattern size is 4x4. If a pattern larger than 4x4 is specified, an error message is printed and the previous pattern is retained.

screenpr

Because of per-window double-buffering and multiple color maps, this utility is only supported for printing one window at a time for these devices. Attempts to print pixels outside this one window may result in a wrong color or pixels from the wrong buffer being printed.

shade_mode

The color map mode may be selected. Shading can be turned on only if using PowerShade. Shading is not supported on device coordinate primitives even with PowerShade.

text_ precision

Only STROKE_TEXT precision is supported.

vertex_format

The 〈use〉 parameter must be zero. Any extra coordinate info will be ignored. If using PowerShade software, vertex_format is fully functional.

with_data

The following routines are called with_data routines because they contain with_data in their routine names. These with_data routines are supported by the CRX family of graphics devices.

  • partial_polygon_with_data3d

  • polygon_with_data3d

  • polyhedron_with_data

  • polyline_with_data3d

  • polymarker_with_data3d

  • quadrilateral_mesh_with_data

  • triangle_strip_with_data

For detailed information on these routines, read the Starbase Reference. In some cases, you will be able to find the routines under their own name, but in other cases, you will need to use the first part of the routine name to locate these routines (e.g., polyline_with_data3d is described on the man page for polyline(3G)).

write_enable

Due to hardware limitations on the CRX-24, certain write_enable masks are not supported. Only those masks whose bits 0-3 are the same as bits 4-7 are supported.

Supported Gescapes

The hpgcrx driver supports the following gescape operations. Refer to Appendix A of this manual for details on gescapes.

  • BLOCK_WRITE_SKIPCOUNT — Specify byte skip count during block write.

  • GCRX_PIXEL_REPLICATE — Pan and zoom a raster image.

  • GCRX_SW_CMAP_FULL — Control CMAP_FULL color map translation. (0-OFF-ON 3-ON and CLEAR DISPLAY)

  • IGNORE_RELEASE — Trigger only when button pressed.

  • R_BIT_MASK — Bit mask.

  • R_BIT_MODE — Bit mode.

  • R_DEF_ECHO_TRANS — Define transparency mask for raster echo.

  • R_ECHO_MASK — Turns on echo transparency mask.

  • R_GET_FRAME_BUFFER — Read frame buffer address.

  • R_LINE_TYPE — User defined line style and repeat length.

  • R_LOCK_DEVICE — Lock device.

  • R_UNLOCK_DEVICE — Unlock device.

  • READ_COLOR_MAP — Read Color Map.

  • SWITCH_SEMAPHORE — Semaphore Control.

  • TRIGGER_ON_RELEASE — Trigger only when button is released.

Additional Gescapes for the CRX-24 and CRX-24Z

  • CUBIC_POLYPOINT — Specify points to be rendered in a cubic volume specified in modeling coordinates.

  • DC_PIXEL_WRITE — Specify points to be rendered along a horizontal scan line.

  • GAMMA_CORRECTION — Enable/disable gamma correction.

  • LINEAR_POLYPOINT — Specify points to be rendered along a line specified in modeling coordinates.

  • STEREO — Activate stereo output mode.

Additional Gescapes for the CRX-24Z

  • DRAW_POINTS — Select different modes of rounding for rendered points.

Additional Gescapes Supported with PowerShade

  • ILLUMINATION_ENABLE — Turn on/off illumination bits.

  • LS_OVERFLOW_CONTROL — Set light source overflow handling.

  • POLYGON_TRANSPARENCY — Segment control over front/back face screen.

  • TRANSPARENCY — Set screen door transparency mask (front face and back face).

Exceptions to Gescape Support

NOTE: The exceptions discussed below may be removed in future drivers.
GAMMA_ CORRECTION

Gamma correction is implemented differently on hpgcrx than on older devices. It is now implemented in the color map rather than in the frame buffer. For information on the gescape GAMMA_CORRECTION, refer to Appendix A.

When the gescape operations listed below are used with a backing store graphics window, they will have the desired effect for the visible portion of the window, but may cause the backing store for obscured parts to be altered in inconsistent ways. The features involved (along with the names of the affected gescape operations) are listed below. For more details on the gescape operations, refer to Appendix A.

R_BIT_MASK

The gescape operation R_BIT_MASK defines a plane mask to the driver that is used for bit/pixel access to a single plane in the frame buffer. As with other device drivers, only the plane corresponding to the highest bit set in the mask is transferred. This gescape is supported for backing store; i.e. the correct data is returned from the retained raster for those parts of the window that are obscured.

R_BIT_MODE

When block_read or block_write are used with the raw parameter set to TRUE, and raw mode is enabled, the driver supports bit/pixel frame buffer access to single planes.

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