The RastPort data structure can be found in the include files <graphics/rastport.h> and <graphics/rastport.i>. it contains the following information: struct RastPort { struct Layer *Layer; struct BitMap *BitMap; UWORD *AreaPtrn; /* Ptr to areafill pattern */ struct TmpRas *TmpRas; struct AreaInfo *AreaInfo; struct GelsInfo *GelsInfo; UBYTE Mask; /* Write mask for this raster */ BYTE FgPen; /* Foreground pen for this raster */ BYTE BgPen; /* Background pen */ BYTE AOlPen; /* Areafill outline pen */ BYTE DrawMode; /* Drawing mode for fill, lines, and text */ BYTE AreaPtSz; /* 2^n words for areafill pattern */ BYTE linpatcnt; /* Current line drawing pattern preshift */ BYTE dummy; UWORD Flags; /* Miscellaneous control bits */ UWORD LinePtrn; /* 16 bits for textured lines */ WORD cp_x, cp_y; /* Current pen position */ UBYTE minterms[8]; WORD PenWidth; WORD PenHeight; struct TextFont *Font; /* Current font address */ UBYTE AlgoStyle; /* The algorithmically generated style */ UBYTE TxFlags; /* Text specific flags */ UWORD TxHeight; /* Text height */ UWORD TxWidth; /* Text nominal width */ UWORD TxBaseline; /* Text baseline */ WORD TxSpacing; /* Text spacing (per character) */ APTR *RP_User; ULONG longreserved[2]; #ifndef GFX_RASTPORT_1_2 UWORD wordreserved[7]; /* Used to be a node */ UBYTE reserved[8]; /* For future use */ #endif }; The sections that follow explain each of the items in the RastPort structure is used. initializing a bitmap structure initializing a rastport structure rastport area-fill information rastport graphics element pointer rastport write mask rastport drawing pens rastport drawing modes rastport line and area drawing patterns rastport pen position and size text attributes