Print this page
10518 Convert fbio(7I) to mandoc

Split Close
Expand all
Collapse all
          --- old/usr/src/man/man7i/fbio.7i
          +++ new/usr/src/man/man7i/fbio.7i
   1      -'\" te
   2    1  .\" Copyright (c) 2003, Sun Microsystems, Inc.
   3      -.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
   4      -.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
   5      -.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
   6      -.TH FBIO 7I "May 12, 2003"
   7      -.SH NAME
   8      -fbio \- frame buffer control operations
   9      -.SH DESCRIPTION
  10      -.sp
  11      -.LP
        2 +.\" Copyright (c) 2017, Joyent, Inc.
        3 +.\" The contents of this file are subject to the terms of the
        4 +.\" Common Development and Distribution License (the "License").
        5 +.\" You may not use this file except in compliance with the License.
        6 +.\"
        7 +.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
        8 +.\" or http://www.opensolaris.org/os/licensing.
        9 +.\" See the License for the specific language governing permissions
       10 +.\" and limitations under the License.
       11 +.\"
       12 +.\" When distributing Covered Code, include this CDDL HEADER in each
       13 +.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
       14 +.\" If applicable, add the following below this CDDL HEADER, with the fields
       15 +.\" enclosed by brackets "[]" replaced with your own identifying
       16 +.\" information: Portions Copyright [yyyy] [name of copyright owner]
       17 +.Dd October 22, 2017
       18 +.Dt FBIO 7I
       19 +.Os
       20 +.Sh NAME
       21 +.Nm fbio
       22 +.Nd frame buffer control operations
       23 +.Sh DESCRIPTION
  12   24  The frame buffers provided with this release support the same general interface
  13      -that is defined by \fB<sys/fbio.h>\fR\&. Each responds to an \fBFBIOGTYPE\fR
  14      -\fBioctl\fR(2) request which returns information in a \fBfbtype\fR structure.
  15      -.sp
  16      -.LP
  17      -Each device has an \fBFBTYPE\fR which is used by higher-level software to
  18      -determine how to perform graphics functions. Each device is used by opening it,
  19      -doing an \fBFBIOGTYPE\fR \fBioctl()\fR to see which frame buffer type is
       25 +that is defined by
       26 +.In sys/fbio.h .
       27 +Each responds to an
       28 +.Dv FBIOGTYPE
       29 +.Xr ioctl 2
       30 +request which returns information in a
       31 +.Vt fbtype
       32 +structure.
       33 +.Pp
       34 +Each device has an
       35 +.\" FBTYPE isn't macro, enum, or type, just used to describe a number of
       36 +.\" CPP-macros of the form #define FBTYPE_xxxx
       37 +.Sy FBTYPE
       38 +which is used by higher-level software to
       39 +determine how to perform graphics functions.
       40 +Each device is used by opening it, doing an
       41 +.Dv FBIOGTYPE
       42 +.Xr ioctl 2
       43 +to see which frame buffer type is
  20   44  present, and thereby selecting the appropriate device-management routines.
  21      -.sp
  22      -.LP
  23      -\fBFBIOGINFO\fR returns information specific to the GS accelerator.
  24      -.sp
  25      -.LP
  26      -\fBFBIOSVIDEO\fR and \fBFBIOGVIDEO\fR are general-purpose \fBioctl()\fR
  27      -requests for controlling possible video features of frame buffers. These
  28      -\fBioctl()\fR requests either set or return the value of a flags integer. At
  29      -this point, only the \fBFBVIDEO_ON\fR option is available, controlled by
  30      -\fBFBIOSVIDEO\fR. \fBFBIOGVIDEO\fR returns the current video state.
  31      -.sp
  32      -.LP
  33      -The \fBFBIOSATTR\fR and \fBFBIOGATTR\fR \fBioctl()\fR requests allow access to
  34      -special features of newer frame buffers. They use the  \fBfbsattr\fR and
  35      -\fBfbgattr\fR structures.
  36      -.sp
  37      -.LP
  38      -Some color frame buffers support the \fBFBIOPUTCMAP\fR and \fBFBIOGETCMAP\fR
  39      -\fBioctl()\fR requests, which provide access to the colormap. They use the
  40      -\fBfbcmap\fR structure.
  41      -.sp
  42      -.LP
       45 +.Pp
       46 +.Dv FBIOGINFO
       47 +returns information specific to the GS accelerator.
       48 +.Pp
       49 +.Dv FBIOSVIDEO
       50 +and
       51 +.Dv FBIOGVIDEO
       52 +are general-purpose
       53 +.Xr ioctl 2
       54 +requests for controlling possible video features of frame buffers.
       55 +These
       56 +.Xr ioctl 2
       57 +requests either set or return the value of a flags integer.
       58 +At this point, only the
       59 +.Dv FBVIDEO_ON
       60 +option is available, controlled by
       61 +.Dv FBIOSVIDEO .
       62 +.Dv FBIOGVIDEO
       63 +returns the current video state.
       64 +.Pp
       65 +The
       66 +.Dv FBIOSATTR
       67 +and
       68 +.Dv FBIOGATTR
       69 +.Xr ioctl 2
       70 +requests allow access to special features of newer frame buffers.
       71 +They use the
       72 +.Vt fbsattr
       73 +and
       74 +.Vt fbgattr
       75 +structures.
       76 +.Pp
       77 +Some color frame buffers support the
       78 +.Dv FBIOPUTCMAP
       79 +and
       80 +.Dv FBIOGETCMAP
       81 +.Xr ioctl 2
       82 +requests, which provide access to the colormap.
       83 +They use the
       84 +.Vt fbcmap
       85 +structure.
       86 +.Pp
  43   87  Also, some framebuffers with multiple colormaps will either encode the colormap
  44      -identifier in the high-order bits of the "index" field in the fbcmap structure,
  45      -or use the \fBFBIOPUTCMAPI\fR and \fBFBIOGETCMAPI\fR \fBioctl()\fR requests.
  46      -.sp
  47      -.LP
  48      -\fBFBIOVERTICAL\fR is used to wait for the start of the next vertical retrace
       88 +identifier in the high-order bits of the
       89 +.Dq index
       90 +field in the
       91 +.Vt fbcmap
       92 +structure, or use the
       93 +.Dv FBIOPUTCMAPI
       94 +and
       95 +.Dv FBIOGETCMAPI
       96 +.Xr ioctl 2
       97 +requests.
       98 +.Pp
       99 +.Dv FBIOVERTICAL
      100 +is used to wait for the start of the next vertical retrace
  49  101  period.
  50      -.sp
  51      -.LP
  52      -\fBFBIOVRTOFFSET\fR Returns the offset to a read-only \fIvertical retrace
  53      -page\fR for those framebuffers that support it.  This vertical retrace page may
  54      -be mapped into user space with \fBmmap\fR(2). The first word of the vertical
  55      -retrace page (type unsigned int) is a counter that is incremented every time
  56      -there is a vertical retrace.  The user process can use this counter in a
  57      -variety of ways.
  58      -.sp
  59      -.LP
  60      -\fBFBIOMONINFO\fR returns a mon_info structure which contains information about
      102 +.Pp
      103 +.Dv FBIOVRTOFFSET
      104 +Returns the offset to a read-only
      105 +.Dq Em vertical retrace page
      106 +for those framebuffers that support it.
      107 +This vertical retrace page may be mapped into user space with
      108 +.Xr mmap 2 .
      109 +The first word of the vertical
      110 +retrace page (type
      111 +.Vt "unsigned int" )
      112 +is a counter that is incremented every time there is a vertical retrace.
      113 +The user process can use this counter in a variety of ways.
      114 +.Pp
      115 +.Dv FBIOMONINFO
      116 +returns a
      117 +.Vt mon_info
      118 +structure which contains information about
  61  119  the monitor attached to the framebuffer, if available.
  62      -.sp
  63      -.LP
  64      -\fBFBIOSCURSOR\fR, \fBFBIOGCURSOR\fR, \fBFBIOSCURPOS\fR and \fBFBIOGCURPOS\fR
      120 +.Pp
      121 +.Dv FBIOSCURSOR ,
      122 +.Dv FBIOGCURSOR ,
      123 +.Dv FBIOSCURPOS
      124 +and
      125 +.Dv FBIOGCURPOS
  65  126  are used to control the hardware cursor for those framebuffers that have this
  66      -feature. \fBFBIOGCURMAX\fR returns the maximum sized cursor supported by the
  67      -framebuffer.  Attempts to create a cursor larger than this will fail.
  68      -.sp
  69      -.LP
  70      -Finally \fBFBIOSDEVINFO\fR and \fBFBIOGDEVINFO\fR are used to transfer
      127 +feature.
      128 +.Dv FBIOGCURMAX
      129 +returns the maximum sized cursor supported by the framebuffer.
      130 +Attempts to create a cursor larger than this will fail.
      131 +.Pp
      132 +Finally
      133 +.Dv FBIOSDEVINFO
      134 +and
      135 +.Dv FBIOGDEVINFO
      136 +are used to transfer
  71  137  variable-length, device-specific information into and out of framebuffers.
  72      -.SH SEE ALSO
  73      -.sp
  74      -.LP
  75      -\fBioctl\fR(2), \fBmmap\fR(2), \fBcgsix\fR(7D)
  76      -.SH BUGS
  77      -.sp
  78      -.LP
  79      -The \fBFBIOSATTR\fR and \fBFBIOGATTR\fR \fBioctl()\fR requests are only
  80      -supported by frame buffers which emulate older frame buffer types. If a frame
  81      -buffer emulates another frame buffer, \fBFBIOGTYPE\fR returns the emulated
  82      -type. To get the real type, use \fBFBIOGATTR\fR.
  83      -.sp
  84      -.LP
  85      -The \fBFBIOGCURPOS\fR ioctl was incorrectly defined in previous operating
      138 +.Sh SEE ALSO
      139 +.Xr ioctl 2 ,
      140 +.Xr mmap 2 ,
      141 +.Xr cgsix 7D
      142 +.Sh BUGS
      143 +The
      144 +.Dv FBIOSATTR
      145 +and
      146 +.Dv FBIOGATTR
      147 +.Xr ioctl 2
      148 +requests are only
      149 +supported by frame buffers which emulate older frame buffer types.
      150 +If a frame buffer emulates another frame buffer,
      151 +.Dv FBIOGTYPE
      152 +returns the emulated type.
      153 +To get the real type, use
      154 +.Dv FBIOGATTR .
      155 +.Pp
      156 +The
      157 +.Dv FBIOGCURPOS
      158 +ioctl was incorrectly defined in previous operating
  86  159  systems, and older code running in binary compatibility mode may get incorrect
  87  160  results.
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX