[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.                      |
 |________________________________________________________________________|