4 libbasetype struct GfxBase_intern
5 sysbase_field gfxbase.ExecBase
7 libbasetypeextern struct GfxBase
12 #include <graphics/gfx.h>
13 #include <graphics/displayinfo.h>
14 #include <graphics/gels.h>
15 #include <graphics/rastport.h>
16 #include <graphics/view.h>
17 #include <graphics/copper.h>
18 #include <graphics/clip.h>
19 #include <graphics/regions.h>
20 #include <graphics/sprite.h>
21 #include <graphics/text.h>
22 #include <hardware/blit.h>
24 #include <utility/tagitem.h>
25 ULONG BestModeID(Tag, ...);
28 #include "graphics_intern.h"
31 LONG BltBitMap(struct BitMap *srcBitMap, LONG xSrc, LONG ySrc, struct BitMap *destBitMap, LONG xDest, LONG yDest, LONG xSize, LONG ySize, ULONG minterm, ULONG mask, PLANEPTR tempA) (A0, D0, D1, A1, D2, D3, D4, D5, D6, D7, A2)
32 void BltTemplate(PLANEPTR source, LONG xSrc, LONG srcMod, struct RastPort *destRP, LONG xDest, LONG yDest, LONG xSize, LONG ySize) (A0, D0, D1, A1, D2, D3, D4, D5)
33 void ClearEOL(struct RastPort *rp) (A1)
34 void ClearScreen(struct RastPort *rp) (A1)
35 WORD TextLength(struct RastPort *rp, CONST_STRPTR string, ULONG count) (A1, A0, D0)
36 void Text(struct RastPort *rp, CONST_STRPTR string, ULONG count) (A1, A0, D0)
37 void SetFont(struct RastPort *rp, struct TextFont *textFont) (A1, A0)
38 struct TextFont *OpenFont(struct TextAttr *textAttr) (A0)
39 void CloseFont(struct TextFont *textFont) (A1)
40 ULONG AskSoftStyle(struct RastPort *rp) (A1)
41 ULONG SetSoftStyle(struct RastPort *rp, ULONG style, ULONG enable) (A1, D0, D1)
42 void AddBob(struct Bob *bob, struct RastPort *rp) (A0, A1)
43 void AddVSprite(struct VSprite *vs, struct RastPort *rp) (A0, A1)
44 void DoCollision(struct RastPort *rp) (A1)
45 void DrawGList(struct RastPort *rp, struct ViewPort *vp) (A1, A0)
46 void InitGels(struct VSprite *head, struct VSprite *tail, struct GelsInfo *GInfo) (A0, A1, A2)
47 void InitMasks(struct VSprite *vs) (A0)
48 void RemIBob(struct Bob *bob, struct RastPort *rp, struct ViewPort *vp) (A0, A1, A2)
49 void RemVSprite(struct VSprite *vs) (A0)
50 void SetCollision(ULONG num, VOID_FUNC routine, struct GelsInfo *GInfo) (D0, A0, A1)
51 void SortGList(struct RastPort *rp) (A1)
52 void AddAnimOb(struct AnimOb *anOb, struct AnimOb **anKey, struct RastPort *rp) (A0, A1, A2)
53 void Animate(struct AnimOb **anKey, struct RastPort *rp) (A0, A1)
54 BOOL GetGBuffers(struct AnimOb *anOb, struct RastPort *rp, BOOL db) (A0, A1, D0)
55 void InitGMasks(struct AnimOb *anOb) (A0)
56 void DrawEllipse(struct RastPort *rp, LONG xCenter, LONG yCenter, LONG a, LONG b) (A1, D0, D1, D2, D3)
57 ULONG AreaEllipse(struct RastPort *rp, WORD cx, WORD cy, WORD a, WORD b) (A1, D0, D1, D2, D3)
58 void LoadRGB4(struct ViewPort *vp, UWORD *colors, LONG count) (A0, A1, D0)
59 BOOL InitRastPort(struct RastPort *rp) (A1)
60 void InitVPort(struct ViewPort *vp) (A0)
61 ULONG MrgCop(struct View *view) (A1)
62 ULONG MakeVPort(struct View *view, struct ViewPort *viewport) (A0, A1)
63 void LoadView(struct View *view) (A1)
65 void SetRast(struct RastPort *rp, ULONG pen) (A1, D0)
66 void Move(struct RastPort *rp, WORD x, WORD y) (A1, D0, D1)
67 void Draw(struct RastPort *rp, LONG x, LONG y) (A1, D0, D1)
68 ULONG AreaMove(struct RastPort *rp, WORD x, WORD y) (A1, D0, D1)
69 ULONG AreaDraw(struct RastPort *rp, WORD x, WORD y) (A1, D0, D1)
70 LONG AreaEnd(struct RastPort *rp) (A1)
72 void QBlit(struct bltnode *bn) (A1)
73 void InitArea(struct AreaInfo *areainfo, void *buffer, WORD maxvectors) (A0, A1, D0)
74 void SetRGB4(struct ViewPort *vp, ULONG n, ULONG r, ULONG g, ULONG b) (A0, D0, D1, D2, D3)
75 void QBSBlit(struct bltnode *bn) (A1)
76 void BltClear(void *memBlock, ULONG bytecount, ULONG flags) (A1, D0, D1)
77 void RectFill(struct RastPort *rp, LONG xMin, LONG yMin, LONG xMax, LONG yMax) (A1, D0, D1, D2, D3)
78 void BltPattern(struct RastPort *rp, PLANEPTR mask, LONG xMin, LONG yMin, LONG xMax, LONG yMax, ULONG byteCnt) (A1, A0, D0, D1, D2, D3, D4)
79 LONG ReadPixel(struct RastPort *rp, LONG x, LONG y) (A1, D0, D1)
80 LONG WritePixel(struct RastPort *rp, LONG x, LONG y) (A1, D0, D1)
81 BOOL Flood(struct RastPort *rp, ULONG mode, LONG x, LONG y) (A1, D2, D0, D1)
82 void PolyDraw(struct RastPort *rp, LONG count, WORD *polyTable) (A1, D0, A0)
83 void SetAPen(struct RastPort *rp, ULONG pen) (A1, D0)
84 void SetBPen(struct RastPort *rp, ULONG pen) (A1, D0)
85 void SetDrMd(struct RastPort *rp, ULONG drawMode) (A1, D0)
86 void InitView(struct View *view) (A1)
87 void CBump(struct UCopList *ucl) (A1)
88 void CMove(struct UCopList *ucl, void *reg, WORD value) (A1, D0, D1)
89 void CWait(struct UCopList *ucl, WORD v, WORD h) (A1, D0, D1)
91 void InitBitMap(struct BitMap *bm, BYTE depth, UWORD width, UWORD height) (A0, A1, D0, D1)
92 void ScrollRaster(struct RastPort *rp, LONG dx, LONG dy, LONG xMin, LONG yMin, LONG xMax, LONG yMax) (A1, D0, D1, D2, D3, D4, D5)
93 void WaitBOVP(struct ViewPort *vp) (A0)
94 WORD GetSprite(struct SimpleSprite *sprite, WORD pick) (A0, D0)
95 void FreeSprite(WORD pick) (D0)
96 void ChangeSprite(struct ViewPort *vp, struct SimpleSprite *s, void *newdata) (A0, A1, A2)
97 void MoveSprite(struct ViewPort *vp, struct SimpleSprite *sprite, WORD x, WORD y) (A0, A1, D0, D1)
98 void LockLayerRom(struct Layer *l) (A5)
99 void UnlockLayerRom(struct Layer *l) (A5)
100 void SyncSBitMap(struct Layer *l) (A0)
101 void CopySBitMap(struct Layer *l) (A0)
103 void DisownBlitter() ()
104 void InitTmpRas(struct TmpRas *tmpras, void *buffer, ULONG size) (A0, A1, D0)
105 void AskFont(struct RastPort *rp, struct TextAttr *textAttr) (A1, A0)
106 void AddFont(struct TextFont *textFont) (A1)
107 void RemFont(struct TextFont *textFont) (A1)
108 PLANEPTR AllocRaster(ULONG width, ULONG height) (D0, D1)
109 void FreeRaster(PLANEPTR p, ULONG width, ULONG height) (A0, D0, D1)
110 void AndRectRegion(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
111 BOOL OrRectRegion(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
112 struct Region *NewRegion() ()
113 BOOL ClearRectRegion(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
114 void ClearRegion(struct Region *region) (A0)
115 void DisposeRegion(struct Region *region) (A0)
116 void FreeVPortCopLists(struct ViewPort *vp) (A0)
117 void FreeCopList(struct CopList *coplist) (A0)
118 void ClipBlit(struct RastPort *srcRP, LONG xSrc, LONG ySrc, struct RastPort *destRP, LONG xDest, LONG yDest, LONG xSize, LONG ySize, UBYTE minterm) (A0, D0, D1, A1, D2, D3, D4, D5, D6)
119 BOOL XorRectRegion(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
120 void FreeCprList(struct cprlist *cprList) (A0)
121 struct ColorMap *GetColorMap(ULONG entries) (D0)
122 void FreeColorMap(struct ColorMap *colormap) (A0)
123 ULONG GetRGB4(struct ColorMap *colormap, LONG entry) (A0, D0)
124 void ScrollVPort(struct ViewPort *vp) (A0)
125 struct CopList *UCopperListInit(struct UCopList *ucl, WORD n) (A0, D0)
126 void FreeGBuffers(struct AnimOb *anOb, struct RastPort *rp, BOOL db) (A0, A1, D0)
127 void BltBitMapRastPort(struct BitMap *srcBitMap, LONG xSrc, LONG ySrc, struct RastPort *destRP, LONG xDest, LONG yDest, LONG xSize, LONG ySize, ULONG minterm) (A0, D0, D1, A1, D2, D3, D4, D5, D6)
128 BOOL OrRegionRegion(struct Region *R1, struct Region *R2) (A0, A1)
129 BOOL XorRegionRegion(struct Region *R1, struct Region *R2) (A0, A1)
130 BOOL AndRegionRegion(struct Region *R1, struct Region *R2) (A0, A1)
131 void SetRGB4CM(struct ColorMap *cm, WORD n, UBYTE r, UBYTE g, UBYTE b) (A0, D0, D1, D2, D3)
132 void BltMaskBitMapRastPort(struct BitMap *srcBitMap, LONG xSrc, LONG ySrc, struct RastPort *destRP, LONG xDest, LONG yDest, LONG xSize, LONG ySize, ULONG minterm, PLANEPTR bltMask) (A0, D0, D1, A1, D2, D3, D4, D5, D6, A2)
133 struct Region *AndRectRegionND(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
134 struct Region *AndRegionRegionND(struct Region *R1, struct Region *R2) (A0, A1)
135 BOOL AttemptLockLayerRom(struct Layer *l) (A5)
136 struct ExtendedNode *GfxNew(ULONG node_type) (D0)
137 void GfxFree(struct ExtendedNode *node) (A0)
138 void GfxAssociate(void *pointer, struct ExtendedNode *node) (A0, A1)
139 void BitMapScale(struct BitScaleArgs *bitScaleArgs) (A0)
140 UWORD ScalerDiv(UWORD factor, UWORD numerator, UWORD denominator) (D0, D1, D2)
141 void TextExtent(struct RastPort *rp, CONST_STRPTR string, ULONG count, struct TextExtent *textExtent) (A1, A0, D0, A2)
142 ULONG TextFit(struct RastPort *rp, CONST_STRPTR string, ULONG strLen, struct TextExtent *textExtent, struct TextExtent *constrainingExtent, LONG strDirection, ULONG constrainingBitWidth, ULONG constrainingBitHeight) (A1, A0, D0, A2, A3, D1, D2, D3)
143 struct ExtendedNode *GfxLookUp(void *pointer) (A0)
144 ULONG VideoControl(struct ColorMap *cm, struct TagItem *tags) (A0, A1)
145 struct MonitorSpec *OpenMonitor(STRPTR monitor_name, ULONG display_id) (A1, D0)
146 LONG CloseMonitor(struct MonitorSpec *monitor_spec) (A0)
147 DisplayInfoHandle FindDisplayInfo(ULONG ID) (D0)
148 ULONG NextDisplayInfo(ULONG last_ID) (D0)
149 struct Region *OrRectRegionND(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
150 struct Region *ClearRectRegionND(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
151 struct Region *OrRegionRegionND(struct Region *R1, struct Region *R2) (A0, A1)
152 ULONG GetDisplayInfoData(DisplayInfoHandle handle, UBYTE *buf, ULONG size, ULONG tagID, ULONG ID) (A0, A1, D0, D1, D2)
153 void FontExtent(struct TextFont *font, struct TextExtent *fontExtent) (A0, A1)
154 LONG ReadPixelLine8(struct RastPort *rp, LONG xstart, LONG ystart, ULONG width, UBYTE *array, struct RastPort *tempRP) (A0, D0, D1, D2, A2, A1)
155 LONG WritePixelLine8(struct RastPort *rp, LONG xstart, LONG ystart, ULONG width, UBYTE *array, struct RastPort *tempRP) (A0, D0, D1, D2, A2, A1)
156 LONG ReadPixelArray8(struct RastPort *rp, LONG xstart, LONG ystart, LONG xstop, LONG ystop, UBYTE *array, struct RastPort *temprp) (A0, D0, D1, D2, D3, A2, A1)
157 LONG WritePixelArray8(struct RastPort *rp, ULONG xstart, ULONG ystart, ULONG xstop, ULONG ystop, UBYTE *array, struct RastPort *temprp) (A0, D0, D1, D2, D3, A2, A1)
158 ULONG GetVPModeID(struct ViewPort *vp) (A0)
159 ULONG ModeNotAvailable(ULONG modeID) (D0)
160 WORD WeighTAMatch(struct TextAttr *reqTextAttr, struct TextAttr *targetTextAttr, struct TagItem *targetTags) (A0, A1, A2)
161 void EraseRect(struct RastPort *rp, LONG xMin, LONG yMin, LONG xMax, LONG yMax) (A1, D0, D1, D2, D3)
162 ULONG ExtendFont(struct TextFont *font, struct TagItem *fontTags) (A0, A1)
163 void StripFont(struct TextFont *font) (A0)
164 UWORD CalcIVG(struct View *View, struct ViewPort *ViewPort) (A0, A1)
165 LONG AttachPalExtra(struct ColorMap *cm, struct ViewPort *vp) (A0, A1)
166 LONG ObtainBestPenA(struct ColorMap *cm, ULONG r, ULONG g, ULONG b, struct TagItem *tags) (A0, D1, D2, D3, A1)
167 struct Region *ClearRegionRegionND(struct Region *R1, struct Region *R2) (A0, A1)
168 void SetRGB32(struct ViewPort *vp, ULONG n, ULONG r, ULONG g, ULONG b) (A0, D0, D1, D2, D3)
169 ULONG GetAPen(struct RastPort *rp) (A0)
170 ULONG GetBPen(struct RastPort *rp) (A0)
171 ULONG GetDrMd(struct RastPort *rp) (A0)
172 ULONG GetOutlinePen(struct RastPort *rp) (A0)
173 void LoadRGB32(struct ViewPort *vp, const ULONG *table) (A0, A1)
174 ULONG SetChipRev(ULONG ChipRev) (D0)
175 void SetABPenDrMd(struct RastPort *rp, ULONG apen, ULONG bpen, ULONG drawMode) (A1, D0, D1, D2)
176 void GetRGB32(struct ColorMap *cm, ULONG firstcolor, ULONG ncolors, ULONG *table) (A0, D0, D1, A1)
177 struct Region *XorRegionRegionND(struct Region *R1, struct Region *R2) (A0, A1)
178 struct Region *XorRectRegionND(struct Region *Reg, struct Rectangle *Rect) (A0, A1)
179 struct BitMap *AllocBitMap(ULONG sizex, ULONG sizey, ULONG depth, ULONG flags, struct BitMap *friend_bitmap) (D0, D1, D2, D3, A0)
180 void FreeBitMap(struct BitMap *bm) (A0)
181 LONG GetExtSpriteA(struct ExtSprite *sprite, struct TagItem *tags) (A2, A1)
182 ULONG CoerceMode(struct ViewPort *RealViewPort, ULONG MonitorID, ULONG Flags) (A0, D0, D1)
183 void ChangeVPBitMap(struct ViewPort *vp, struct BitMap *bm, struct DBufInfo *db) (A0, A1, A2)
184 void ReleasePen(struct ColorMap *cm, ULONG n) (A0, D0)
185 LONG ObtainPen(struct ColorMap *cm, ULONG n, ULONG r, ULONG g, ULONG b, ULONG flags) (A0, D0, D1, D2, D3, D4)
186 IPTR GetBitMapAttr(struct BitMap *bitmap, ULONG attribute) (A0, D1)
187 struct DBufInfo *AllocDBufInfo(struct ViewPort *vp) (A0)
188 void FreeDBufInfo(struct DBufInfo *db) (A1)
189 ULONG SetOutlinePen(struct RastPort *rp, ULONG pen) (A0, D0)
190 ULONG SetWriteMask(struct RastPort *rp, ULONG mask) (A0, D0)
191 void SetMaxPen(struct RastPort *rp, ULONG maxpen) (A0, D0)
192 void SetRGB32CM(struct ColorMap *cm, ULONG n, ULONG r, ULONG g, ULONG b) (A0, D0, D1, D2, D3)
193 void ScrollRasterBF(struct RastPort *rp, LONG dx, LONG dy, LONG xMin, LONG yMin, LONG xMax, LONG yMax) (A1, D0, D1, D2, D3, D4, D5)
194 ULONG FindColor(struct ColorMap *cm, ULONG r, ULONG g, ULONG b, ULONG maxpen) (A3, D1, D2, D3, D4)
196 struct ExtSprite *AllocSpriteDataA(struct BitMap *bitmap, struct TagItem *tagList) (A2, A1)
197 LONG ChangeExtSpriteA(struct ViewPort *vp, struct ExtSprite *oldsprite, struct ExtSprite *newsprite, struct TagItem *tags) (A0, A1, A2, A3)
198 void FreeSpriteData(struct ExtSprite *extsp) (A2)
199 void SetRPAttrsA(struct RastPort *rp, struct TagItem *tags) (A0, A1)
200 void GetRPAttrsA(struct RastPort *rp, struct TagItem *tags) (A0, A1)
201 ULONG BestModeIDA(struct TagItem *TagItems) (A0)
202 void WriteChunkyPixels(struct RastPort *rp, LONG xstart, LONG ystart, LONG xstop, LONG ystop, UBYTE *array, LONG bytesperrow) (A0, D0, D1, D2, D3, A2, D4)
203 struct RastPort *CreateRastPort() ()
204 struct RastPort *CloneRastPort(struct RastPort *rp) (A1)
205 void DeinitRastPort(struct RastPort *rp) (A1)
206 void FreeRastPort(struct RastPort *rp) (A1)
207 BOOL LateGfxInit(APTR data) (A0)
208 struct BitMap *AllocScreenBitMap(ULONG modeid) (D0)
209 BOOL MouseCoordsRelative() ()
210 BOOL SetFrontBitMap(struct BitMap *bitmap, BOOL copyback) (A0, D0)
211 void SetPointerPos(UWORD x, UWORD y) (D0, D1)
212 void SetPointerShape(UWORD *shape, UWORD width, UWORD height, UWORD xoffset, UWORD yoffset) (A0, D0, D1, D2, D3)
213 BOOL ClearRegionRegion(struct Region *R1, struct Region *R2) (A0, A1)
214 struct Region *CopyRegion(struct Region *region) (A0)
215 BOOL AreRegionsEqual(struct Region *R1, struct Region *R2) (A0, A1)
216 BOOL IsPointInRegion(struct Region *Reg, WORD x, WORD y) (A0, D0, D1)
217 BOOL ScrollRegion(struct Region *region, struct Rectangle *rect, WORD dx, WORD dy) (A0, A1, D0, D1)
218 void SwapRegions(struct Region *region1, struct Region *region2) (A0, A0)
219 BOOL AndRectRect(struct Rectangle *rect1, struct Rectangle *rect2, struct Rectangle *intersect) (A0, A1, A2)
220 struct Region *NewRectRegion(WORD MinX, WORD MinY, WORD MaxX, WORD MaxY) (D0, D1, D2, D3)
221 BOOL SetRegion(struct Region *src, struct Region *dest) (A0, A1)
222 void BltRastPortBitMap(struct RastPort *srcRastPort, LONG xSrc, LONG ySrc, struct BitMap *destBitMap, LONG xDest, LONG yDest, ULONG xSize, ULONG ySize, ULONG minterm) (A0, D0, D1, A1, D2, D3, D4, D5, D6)
223 void ShowImminentReset() ()