grfx(7) DG/UX 4.30 grfx(7)
NAME
grfx - AViiON 300 series workstation graphics processor
DESCRIPTION
This device driver supports a monochrome or color graphics
processor for the Data General AViiON 300 series
workstations. The device is accessed using the standard
open, close, read, write, ioctl, and select system calls.
The AViiON 300 series graphics processors are memory-mapped
devices. Data and commands to and from the graphics
processor are placed directly into the device's hardware
control registers by mapping these registers into the user
program's logical address space.
The open system call provides a handle to access the
graphics processor. Multiple opens on the graphics device
are allowed, but it is the application's responsibility to
mediate access to the single device.
The close system call frees the handle to the graphics
processor established by open.
The read and write system calls are not supported for the
graphics processor.
The ioctl system call may be used with the following
commands:
GRFX_RESET Resets the video timing on the graphics
processor.
GRFX_VIDEO_ENABLE Enables/disables (<argument> nonzero/zero)
video display.
GRFX_LOG_ERROR Enables/disables (<argument> nonzero/zero)
graphics error logging (monochrome only).
GRFX_LOG_CLIP Enables/disables (<argument> nonzero/zero)
logging of clipped drawing operations
(monochrome only).
GRFX_MAP_REGS Maps graphics processor control registers
into user memory pointed to by <argument>.
GRFX_MAP_FB Maps the frame buffer into user memory
pointed to by <argument>.
GRFX_UNMAP_REGS Unmaps graphics processor control
registers pointed to by <argument>.
GRFX_UNMAP_FB Unmaps frame buffer pointed to by
<argument>.
Licensed material--property of copyright holder(s) Page 1
grfx(7) DG/UX 4.30 grfx(7)
GRFX_GET_FB_SIZES Returns frame buffer configuration in by
<argument>.
Mapping the graphics control registers can be accomplished
by first reserving one page of logical memory with
valloc(3). The address returned by valloc(3) must then be
supplied as the <argument> to the GRFXMAPREGS ioctl
command. Upon return from the ioctl system call, the
graphics processor control registers may be referenced by
casting the address supplied in <argument> to a pointer to a
'nec_reg_type' (monochrome) or a 'cga_reg_type' (color)
structure. These structures are defined in the monochrome
and color header files dg_grfx_mono.h and dg_grfx_color.h.
Graphics frame buffer memory may be mapped by first using
valloc(3) to reserve 512k bytes (0x00080000 hexadecimal) for
monochrome, 1.5 megabytes (0x00180000 hexadecimal) for
monochrome with kanji memory, or 128 megabytes (0x08000000
hexadecimal) for color. The address returned by valloc(3)
must then be supplied as the <argument> to the GRFXMAPFB
ioctl command. Upon return from the ioctl system call, the
graphics frame buffer memory may be referenced beginning at
the address supplied in <argument>.
Select always returns READY for both read and write
operations.
FILES
/dev/grfx grfx device node
/usr/include/sys/_int_dg_grfx_ioctl.h
graphics ioctl commands
dg_grfx_mono.h in /usr/include/sys; monochrome graphics
register, command and mask definitions
dg_grfx_color.h in /usr/include/sys; color graphics
register, command and mask definitions
SEE ALSO
ioctl(2), valloc(3).
NOTE
Directly accessing the video frame buffer is not recommended
for DG/UX revision 4.30, because such access requires a
significant increase in swap space size. If your application
must access the video frame buffer directly, you may do so
in DG/UX 4.30 by configuring additional swap space
corresponding to the size of the video frame buffer. The
number of blocks which must be added are: 262144 for color
systems, 1024 for monochrome systems, and 3072 for
monochrome systems with the kanji frame buffer.
Refer to the DG/UX 4.30 release notice for further
information.
Licensed material--property of copyright holder(s) Page 2