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