NAME | SYNOPSIS | DESCRIPTION | APPLICATION PROGRAMMING INTERACE | IOCTLS | FILES | ATTRIBUTES | SEE ALSO
SUNW,m64B@pci-slot:m64X
m64 is the PGX 8-bit color frame buffer and graphics accelerator, with 8-bit colormap. It provides the standard frame buffer interface defined in fbio(7I).
The m64 has registers and memory that may be mapped with mmap(2).
There is extra on-board memory which may be used for scratch-pad, double-buffering or off-screen rendering. The total amount of memory on the board may be found with the FBIOGATTR ioctl. Total mappable memory, including on-screen memory, is attr.sattr.dev_specific[0].
The chip revision number is returned in dev_specific[2].
The dac revision number is returned in dev_specific[3].
The prom revision number is returned in dev_specific[4].
The byte offset from the start of the frame buffer to the start of the visible part of the frame buffer is returned in dev_specific[5].
The m64 frame buffer has a 2-color cursor. The color is determined by the mask and data planes, as written by the FBIOSETCURS ioctl. mask:data combinations are as follows: 0x=transparent, 10=color0, 11=color1.
Maximum cursor size is 64x64 pixels. The Mask and Image pointers in the fbcursor structure should point to data which is zero-padded to 32-bits per scanline and aligned on a 32-bit boundary.
The m64 frame buffer accepts the following ioctl(2) calls, which are defined in <sys/fbio.h> and <sys/visual_io.h>. All are implemented as described in fbio(7I):
FBIOGATTR | FBIOGTYPE |
FBIOPUTCMAP | FBIOGETCMAP |
FBIOSATTR | FBIOSVIDEO |
FBIOGVIDEO | FBIOVERTICAL |
FBIOSCURSOR | FBIOGCURSOR |
FBIOSCURPOS | FBIOGCURPOS |
FBIOGCURMAX | FBIOGXINFO |
FBIOMONINFO | FBIOVRTOFFSET |
VIS_GETIDENTIFIER |
The value returned by VIS_GETIDENTIFIER is SUNWm64.
FBIOPUTCMAP returns immediately, although the actual colormap update may be delayed until the next vertical retrace. If vertical retrace is currently in progress, the new colormap takes effect immediately.
FBIOGETCMAP returns immediately with the currently-loaded colormap, unless a colormap write is pending (see above), in which case it waits until the colormap is updated before returning. This may be used to synchronize software with colormap updates.
The size and linebytes values returned by FBIOGATTR, FBIOGTYPE, and FBIOGXINFO are measured in bytes. The proper ways to compute the size of a frame buffer mapping is either:
size=linebytes*height
or to use the size attribute in FBIOGATTR, FBIOGTYPE.
Ioctl functions which nominally wait for vertical retrace ( FBIOVERTICAL, FBIOGETCMAP) do not wait, but return immediately, if video is blanked or vertical retrace is not being generated. The vertical retrace counter page is not updated if vertical retrace is not being generated. Vertical retrace is not generated when the device is in energy-saving mode.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Architecture | UltraSPARC with a PCI I/O Bus |
NAME | SYNOPSIS | DESCRIPTION | APPLICATION PROGRAMMING INTERACE | IOCTLS | FILES | ATTRIBUTES | SEE ALSO