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