1 #ifndef CYBERGRAPHICS_INTERN_H
2 #define CYBERGRAPHICS_INTERN_H
4 #ifndef EXEC_LIBRARIES_H
5 # include <exec/libraries.h>
9 # include <exec/lists.h>
13 # include <dos/bptr.h>
16 #ifndef AROS_LIBCALL_H
17 # include <aros/libcall.h>
20 #ifndef GRAPHICS_RASTPORT_H
21 # include <graphics/rastport.h>
24 #ifndef UTILITY_TAGITEM_H
25 # include <utility/tagitem.h>
28 #ifndef GRAPHICS_VIEW_H
29 # include <graphics/view.h>
32 #ifndef PROTO_GRAPHICS_H
33 # include <proto/graphics.h>
38 struct Library libnode
;
42 extern APTR
driver_AllocCModeListTagList(struct TagItem
*taglist
, struct GfxBase
*GfxBase
);
43 extern VOID
driver_FreeCModeList(struct List
*modeList
, struct GfxBase
*GfxBase
);
44 extern ULONG
driver_BestCModeIDTagList(struct TagItem
*tags
, struct GfxBase
*GfxBase
);
45 extern ULONG
driver_GetCyberIDAttr(ULONG attr
, ULONG id
, struct GfxBase
*GfxBase
);
46 extern BOOL
driver_IsCyberModeID(ULONG modeid
, struct GfxBase
*GfxBase
);
48 #define GetCGFXBase(base) ((struct IntCGFXBase *)base)
50 extern VOID
driver_CVideoCtrlTagList(struct ViewPort
*vp
, struct TagItem
*tags
, struct GfxBase
*GfxBase
);
51 extern ULONG
driver_GetCyberMapAttr(struct BitMap
*bitMap
, ULONG attribute
, struct GfxBase
*GfxBase
);
52 extern LONG
driver_WriteLUTPixelArray(APTR srcrect
,
53 UWORD srcx
, UWORD srcy
,
54 UWORD srcmod
, struct RastPort
*rp
, APTR ctable
,
55 UWORD destx
, UWORD desty
,
56 UWORD sizex
, UWORD sizey
,
58 struct GfxBase
*GfxBase
);
60 extern ULONG
driver_ExtractColor(struct RastPort
*RastPort
, struct BitMap
*SingleMap
, ULONG Colour
, ULONG sX
, ULONG sY
, ULONG Width
, ULONG Height
, struct GfxBase
*GfxBase
);
61 extern ULONG
driver_MovePixelArray(UWORD SrcX
, UWORD SrcY
, struct RastPort
*RastPort
, UWORD DstX
, UWORD DstY
, UWORD SizeX
, UWORD SizeY
, struct GfxBase
*GfxBase
);
62 extern LONG
driver_FillPixelArray(struct RastPort
*rp
63 , UWORD destx
, UWORD desty
, UWORD width
, UWORD height
64 , ULONG pixel
, struct GfxBase
*GfxBase
);
66 extern LONG
driver_InvertPixelArray(struct RastPort
*rp
67 , UWORD destx
, UWORD desty
, UWORD width
, UWORD height
68 , struct GfxBase
*GfxBase
);
70 extern LONG
driver_ReadPixelArray(APTR dst
, UWORD destx
, UWORD desty
71 , UWORD dstmod
, struct RastPort
*rp
, UWORD srcx
, UWORD srcy
72 , UWORD width
, UWORD height
, UBYTE dstformat
, struct GfxBase
*GfxBase
);
74 extern LONG
driver_WriteRGBPixel(struct RastPort
*rp
, UWORD x
, UWORD y
75 , ULONG pixel
, struct GfxBase
*GfxBase
);
77 extern ULONG
driver_ReadRGBPixel(struct RastPort
*rp
, UWORD x
, UWORD y
78 , struct GfxBase
*GfxBase
);
80 extern LONG
driver_WritePixelArray(APTR src
, UWORD srcx
, UWORD srcy
81 , UWORD srcmod
, struct RastPort
*rp
, UWORD destx
, UWORD desty
82 , UWORD width
, UWORD height
, UBYTE srcformat
, struct GfxBase
*GfxBase
);
84 extern LONG
driver_WritePixelArrayAlpha(APTR src
, UWORD srcx
, UWORD srcy
85 , UWORD srcmod
, struct RastPort
*rp
, UWORD destx
, UWORD desty
86 , UWORD width
, UWORD height
, ULONG globalalpha
, struct GfxBase
*GfxBase
);
88 extern void driver_BltTemplateAlpha(UBYTE
*src
, LONG srcx
, LONG srcmod
89 , struct RastPort
*rp
, LONG destx
, LONG desty
, LONG width
, LONG height
90 , struct GfxBase
*GfxBase
);
92 extern VOID
driver_UnLockBitMapTagList(APTR handle
, struct TagItem
*tags
, struct GfxBase
*GfxBase
);
93 extern VOID
driver_UnLockBitMap(APTR handle
, struct GfxBase
*GfxBase
);
94 extern APTR
driver_LockBitMapTagList(struct BitMap
*bm
, struct TagItem
*tags
, struct GfxBase
*GfxBase
);
96 extern VOID
driver_DoCDrawMethodTagList(struct Hook
*hook
, struct RastPort
*rp
, struct TagItem
*tags
, struct Library
*CyberGfxBase
);
98 #endif /* CYBERGRAPHICS_INTERN_H */