framebuf.7 (2010 09)
f
framebuf(7) framebuf(7)
GCID Provide a device identification number. The parameter is defined as
int *arg;.
The information returned when using this command is a subset of the information
provided by
GCDESCRIBE, and is provided here for backward compatibility only.
GCON, GCOFF Turn graphics on or off. These operations are valid for devices whose
CRT_GRAPHICS_ON_OFF bit is set in the
crt_attributes
field of the
crt_frame_buffer_t
data structure returned by the GCDESCRIBE
command.
Otherwise, these commands have no effect.
GCAON, GCAOFF Turn alpha on or off. These operations are valid for devices whose
CRT_ALPHA_ON_OFF bit is set in the
crt_attributes
field of the
crt_frame_buffer_t
data structure returned by the GCDESCRIBE command.
Otherwise, these commands have no effect.
GCMAP Make the frame-buffer memory, graphics control, and other device regions accessi-
ble to the user process making the call. Only processes that request this can
directly access frame-buffer memory and control registers. After a successful
GCMAP call, the fields crt_frame_base
and crt_control_base
in the
crt_frame_buffer_t
data structure (returned by a subsequent GCDESCRIBE
ioctl() call), hold the valid addresses of these two regions of the frame buffer. If,
for a specific device, more than two regions are to be mapped to the user’s address
space, the base addresses of up to CRT_MAX_REGIONS extra device regions will be
placed in the array crt_region in successive order. Only the regions pertinent to
a specific frame buffer are mapped. Irrelevant region fields in the
crt_frame_buffer_t
data structure are set to 0. Use of the arg parameter is
implementation dependent (see DEPENDENCIES below). The base addresses for
frame-buffer regions are always page aligned.
GCUNMAP Cause access to the frame-buffer memory, graphics control, and possibly other dev-
ice regions to be removed from the requesting process. The parameter arg is
ignored and should be set to
0. Any attempt to access these memory regions after a
successful GCUNMAP call results in a memory fault and sends the signal SIGSEGV
to the process.
GCLOCK Provide for exclusive use of the frame-buffer device by cooperating processes. The
calling process either locks the device and continues or is blocked. Blocking in this
case means that the call returns only when the frame buffer is available or when
the call is interrupted by a signal. If the call is interrupted, it returns an error and
errno is set to [EINTR]. Waiting occurs if another process has previously locked
this frame buffer using the GCLOCK command and has not executed a GCUNLOCK
command yet. The GCLOCK command does not prevent other non-cooperating
processes from writing to the frame buffer; thus, GCLOCK is an advisory lock only.
The parameter arg is ignored and should be set to 0.
This call prevents the Internal Terminal Emulator (ITE) from corrupting the state
of the graphics hardware (see termio (7)). On some systems, as long as the frame
buffer is locked with a
GCLOCK command, the ITE does not output text to it (see
DEPENDENCIES below). Any attempt to lock the device more than once by the
same process fails, and causes errno to be set to [EBUSY].
GCLOCK_NOWAIT Provide for exclusive use of the frame-buffer device by cooperating processes. This
request has the same effect on the frame-buffer device as does the GCLOCK request.
However, this call does not wait for the frame buffer to be released by other
processes. If the frame-buffer device is locked, the process is not blocked; instead,
the system call returns an error and causes errno to be set to [EAGAIN]. The
parameter arg is ignored and should be set to 0.
GCLOCK_BLOCKSIG
Provide for exclusive use of the frame-buffer device by cooperating processes while
blocking all incoming signals for the calling process that otherwise might have been
caught. This call is a superset of the GCLOCK call. The parameter arg is ignored
and should be set to 0. When the display is acquired for exclusive use (and thus
locked), all signals sent to the process that otherwise would have been caught by the
process "at the time of the" GCLOCK call are withheld (blocked) until GCUNLOCK is
requested. Any attempt to modify the signal mask of the process (see sigset-
mask(2)) before a GCUNLOCK request is made will not have any effect on these
2 Hewlett-Packard Company − 2 − HP-UX 11i Version 3: September 2010