[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]

The following are brief descriptions of the Amiga's graphics primitives.
See the Amiga ROM Kernel Reference Manual: Includes and Autodocs for
details on each function call.


                Table 27-9: Graphics Primitives Functions
  ________________________________________________________________________
 |                                                                        |
 |         Display                                                        |
 |     Set-up Functions              Description                          |
 |========================================================================|
 |           InitView()  Initializes the View structure.                  |
 |         InitBitMap()  Initializes the BitMap structure.                |
 |            RASSIZE()  Calculates the size of a ViewPort's BitMap.      |
 |        AllocRaster()  Allocates the bitplanes needed for a BitMap.     |
 |         FreeRaster()  Frees the bitplanes created with AllocRaster().  |
 |          InitVPort()  Initializes the ViewPort structure.              |
 |        GetColorMap()  Returns the ColorMap structure used by           |
 |                       ViewPorts.                                       |
 |       FreeColorMap()  Frees the ColorMap created by GetColorMap().     |
 |           LoadRGB4()  Loads the color registers for a given ViewPort.  |
 |          SetRGB4CM()  Loads an individual color register for a given   |
 |                       ViewPort.                                        |
 |          MakeVPort()  Creates the intermediate Copper list program for |
 |                       a ViewPort.                                      |
 |             MrgCop()  Merges the intermediate Copper lists.            |
 |           LoadView()  Displays a given View.                           |
 |        FreeCprList()  Frees the Copper list created with MrgCop()      |
 |  FreeVPortCopLists()  Frees the intermediate Copper lists created with |
 |                       MakeVPort().                                     |
 |        OFF_DISPLAY()  Turns the video display DMA off                  |
 |         ON_DISPLAY()  Turns the video display DMA back on again.       |
 |________________________________________________________________________|

  ________________________________________________________________________
 |                                                                        |
 |    Release 2 Display                                                   |
 |    Set-up Functions               Description                          |
 |========================================================================|
 |     FindDisplayInfo()  Returns the display database handle for a given |
 |                        ModeID (V36).                                   |
 |  GetDisplayInfoData()  Looks up a display attribute in the display     |
 |                        database (V36).                                 |
 |        VideoControl()  Sets, clears and gets the attributes of an      |
 |                        existing display (V36).                         |
 |              GfxNew()  Creates ViewExtra or ViewPortExtra used in      |
 |                        Release 2 displays (V36).                       |
 |        GfxAssociate()  Attaches a ViewExtra to a View (V36).           |
 |             GfxFree()  Frees the ViewExtra or ViewPortExtra created by |
 |                        GfxNew() (V36).                                 |
 |         OpenMonitor()  Returns the MonitorSpec structure used in       |
 |                        Release 2 Views (V36).                          |
 |        CloseMonitor()  Frees the MonitorSpec structure created by      |
 |                        OpenMonitor() (V36).                            |
 |         GetVPModeID()  Returns the Release 2 ModeID of an existing     |
 |                        ViewPort (V36).                                 |
 |    ModeNotAvailable()  Determines if a display mode is available from  |
 |                        a given ModeID (V36).                           |
 |________________________________________________________________________|

  ________________________________________________________________________
 |                                                                        |
 |      Drawing                                                           |
 |     Functions                     Description                          |
 |========================================================================|
 |  InitRastPort()  Initialize a RastPort structure.                      |
 |      InitArea()  Initialize the AreaInfo structure used with a         |
 |                  RastPort.                                             |
 |     SetWrMask()  Set the RastPort.Mask.                                |
 |       SetAPen()  Set the RastPort.FgPen foreground pen color.          |
 |       SetBPen()  Set the RastPort.BgPen background pen color.          |
 |       SetOPen()  Set the RastPort.AOlPen area fill outline pen color.  |
 |     SetDrMode()  Set the RastPort.DrawMode drawing mode.               |
 |       SetDrPt()  Set the RastPort.LinePtrn line drawing pattern.       |
 |       SetAfPt()  Set the RastPort area fill pattern and size.          |
 |------------------------------------------------------------------------|
 |    WritePixel()  Draw a single pixel in the foreground color at a      |
 |                  given coordinate.                                     |
 |     ReadPixel()  Find the color of the pixel at a given coordinate.    |
 |    DrawCircle()  Draw a circle with a given radius and center point.   |
 |   DrawEllipse()  Draw an ellipse with the given radii and center       |
 |                  point.                                                |
 |          Move()  Move the RastPort drawing pen to a given coordinate.  |
 |          Draw()  Draw a line from the current pen location to a given  |
 |                  coordinate.                                           |
 |------------------------------------------------------------------------|
 |      PolyDraw()  Draw a polygon with a given set of vertices.          |
 |      AreaMove()  Set the anchor point for a filled polygon.            |
 |      AreaDraw()  Add a new vertice to an area-fill polygon.            |
 |       AreaEnd()  Close and area-fill polygon, draw it and fill it.     |
 |      BNDRYOFF()  Turn off area-outline pen usage activated with        |
 |                  SetOPen().                                            |
 |    AreaCircle()  Draw a filled circle with a given radius and center   |
 |                  point.                                                |
 |   AreaEllipse()  Draw a filled ellipse with the given radii and center |
 |                  point.                                                |
 |         Flood()  Flood fill a region starting at a given coordinate.   |
 |      RectFill()  Flood fill a rectangular area at a given location and |
 |                  size.                                                 |
 |________________________________________________________________________|

  ________________________________________________________________________
 |                                                                        |
 |         Data Movement                                                  |
 |           Functions               Description                          |
 |========================================================================|
 |               BltClear()  Use the hardware blitter to clear a block of |
 |                           memory.                                      |
 |                SetRast()  Fill the RastPort.BitMap with a given color. |
 |           ScrollRaster()  Move a portion of a RastPort.BitMap.         |
 |             BltPattern()  Draw a rectangular pattern of pixels into a  |
 |                           RastPort.BitMap.  The x-dimension of the     |
 |                           rectangle must be word-aligned and           |
 |                           word-sized.                                  |
 |            BltTemplate()  Draw a rectangular pattern of pixels into a  |
 |                           RastPort.BitMap.  The x-dimension of the     |
 |                           rectangle can be arbitrarily bit-aligned and |
 |                           sized.                                       |
 |              BltBitMap()  Copy a rectangular area from one BitMap to a |
 |                           given coordinate in another BitMap.          |
 |      BltBitMapRastPort()  Copy a rectangular area from a BitMap to a   |
 |                           given coordinate in a RastPort.BitMap.       |
 |  BltMaskBitMapRastPort()  Copy a rectangular area from a BitMap to a   |
 |                           RastPort.BitMap through a mask bitplane.     |
 |               ClipBlit()  Copy a rectangular area from one RastPort to |
 |                           another with respect to their Layers.        |
 |            BitMapScale()  Scale a rectangular area within a BitMap to  |
 |                           new dimensions (V36).                        |
 |________________________________________________________________________|

  ________________________________________________________________________
 |                                                                        |
 |  Hardware Programming                                                  |
 |       Functions                   Description                          |
 |========================================================================|
 |     OwnBlitter()  Obtain exclusive access to the Amiga's hardware      |
 |                   blitter.                                             |
 |  DisownBlitter()  Relinquish exclusive access to the blitter.          |
 |       WaitBlit()  Suspend until the current blitter operation has      |
 |                   completed.                                           |
 |          QBlit()  Place a bltnode-style asynchronous blitter request   |
 |                   in the system queue                                  |
 |        QBSBlit()  Place a bltnode-style asynchronous blitter request   |
 |                   in the beam synchronized queue.                      |
 |------------------------------------------------------------------------|
 |          CINIT()  Initialize the user Copper list buffer.              |
 |          CWAIT()  Instructs the Copper to wait for the video beam to   |
 |                   reach a given position.                              |
 |          CMOVE()  Instructs the Copper to place a value into a given   |
 |                   hardware register.                                   |
 |          CBump()  Instructs the Copper to increment its Copper list    |
 |                   pointer.                                             |
 |           CEND()  Terminate the user Copper list.                      |
 |________________________________________________________________________|