4.3BSD-UWisc/man/cat4/ps.4

Compare this file to the similar file:
Show the results in this format:




PS(4)               UNIX Programmer's Manual                PS(4)



NAME
     ps - Evans and Sutherland Picture System 2 graphics device
     interface

SYNOPSIS
     device ps0 at uba? csr 0172460 vector psclockintr pssystem-
     intr

DESCRIPTION
     The _p_s driver provides access to an Evans and Sutherland
     Picture System 2 graphics device.  Each minor device is a
     new PS2.  When the device is opened, its interface registers
     are mapped, via virtual memory, into a user process's
     address space.  This allows the user process very high
     bandwidth to the device with no system call overhead.

     DMA to and from the PS2 is not supported. All read and write
     system calls will fail.  All data is moved to and from the
     PS2 via programmed I/O using the device's interface regis-
     ters.

     Commands are fed to and from the driver using the following
     ioctls:

     PSIOGETADDR
          Returns the virtual address through which the user pro-
          cess can access the device's interface registers.

     PSIOAUTOREFRESH
          Start auto refreshing the screen.  The argument is an
          address in user space where the following data resides.
          The first longword is a _c_o_u_n_t of the number of static
          refresh buffers.  The next _c_o_u_n_t longwords are the
          addresses in refresh memory where the refresh buffers
          lie.  The driver will cycle through these refresh
          buffers displaying them one by one on the screen.

     PSIOAUTOMAP
          Start automatically passing the display file through
          the matrix processor and into the refresh buffer.  The
          argument is an address in user memory where the follow-
          ing data resides.  The first longword is a _c_o_u_n_t of the
          number of display files to operate on.  The next _c_o_u_n_t
          longwords are the address of these display files.  The
          final longword is the address in refresh buffer memory
          where transformed coordinates are to be placed if the
          driver is not in double buffer mode (see below).

     PSIODOUBLEBUFFER
          Cause the driver to double buffer the output from the
          map that is going to the refresh buffer.  The argument
          is again a user space address where the real arguments



Printed 12/27/86          May 21, 1986                          1






PS(4)               UNIX Programmer's Manual                PS(4)



          are stored.  The first argument is the starting address
          of refresh memory where the two double buffers are
          located.  The second argument is the length of each
          double buffer.  The refresh mechanism displays the
          current double buffer, in addition to its static
          refresh lists, when in double buffer mode.

     PSIOSINGLEREFRESH
          Single step the refresh process. That is, the driver
          does not continually refresh the screen.

     PSIOSINGLEMAP
          Single step the matrix process.  The driver does not
          automatically feed display files through the matrix
          unit.

     PSIOSINGLEBUFFER
          Turn off double buffering.

     PSIOTIMEREFRESH
          The argument is a count of the number of refresh inter-
          rupts to take before turning off the screen.  This is
          used to do time exposures.

     PSIOWAITREFRESH
          Suspend the user process until a refresh interrupt has
          occurred.  If in TIMEREFRESH mode, suspend until count
          refreshes have occurred.

     PSIOSTOPREFRESH
          Wait for the next refresh, stop all refreshes, and then
          return to user process.

     PSIOWAITMAP
          Wait until a map done interrupt has occurred.

     PSIOSTOPMAP
          Wait for a map done interrupt, do not restart the map,
          and then return to the user.

FILES
     /dev/ps

DIAGNOSTICS
     ps device intr.
     ps dma intr.  An interrupt was received from the device.
     This shouldn't happen, check your device configuration for
     overlapping interrupt vectors.

BUGS
     An invalid access (e.g., longword) to a mapped interface
     register can cause the system to crash with a machine check.



Printed 12/27/86          May 21, 1986                          2






PS(4)               UNIX Programmer's Manual                PS(4)



     A user process could possibly cause infinite interrupts
     hence bringing things to a crawl.





















































Printed 12/27/86          May 21, 1986                          3