#ifndef GRAPHICS_RASTPORT_H
#define GRAPHICS_RASTPORT_H

/*******************************************************************
 pOS / Amiga adapt
*******************************************************************/

#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef __INC_POS_PGFX_RASTPORT_H
#include <pGFX/RastPort.h>
#endif
#ifndef GRAPHICS_GFX_H
#include <graphics/gfx.h>
#endif


struct RastPort
{
  APTR            rp_Base;

/* Trick */
/*  ULONG           rp_BaseUse[2]; */
  UBYTE Mask;
  UBYTE _Pad3[7];

  struct Layer   *Layer;
  struct BitMap  *BitMap;
  UWORD           Flags;
  SLONG           cp_x,cp_y;

  struct TextFont *Font;
  UWORD           AlgoStyle;
  UWORD           TxFlags;
  UWORD           TxHeight;
  UWORD           TxWidth;
  UWORD           TxBaseline;
  SWORD           TxSpacing;
/* ... */
};


#define JAM1        DRMD_Jam1
#define JAM2        DRMD_Jam2
#define COMPLEMENT  DRMD_Complement
#define INVERSVID   DRMD_Invers

#define FRST_DOT    RASTPORTF_FirstDot
#define ONE_DOT     RASTPORTF_OneDot
#define DBUFFER     RASTPORTF_DBuffer
#define AREAOUTLINE RASTPORTF_AreaOutline
#define NOCROSSFILL RASTPORTF_NoCrossFill










#ifdef __IGNORE_NOT_SUPPORTED__

 struct AreaInfo
 {
     WORD   *VctrTbl;
     WORD   *VctrPtr;
     BYTE    *FlagTbl;
     BYTE    *FlagPtr;
     WORD   Count;
     WORD   MaxCount;
     WORD   FirstX,FirstY;
 };

 struct TmpRas
 {
     BYTE *RasPtr;
     LONG Size;
 };

 struct GelsInfo
 {
     BYTE sprRsrvd;
     UBYTE Flags;
     struct VSprite *gelHead, *gelTail;
     WORD *nextLine;
     WORD **lastColor;
     struct collTable *collHandler;
     WORD leftmost, rightmost, topmost, bottommost;
    APTR firstBlissObj,lastBlissObj;
 };



#endif /** __IGNORE_NOT_SUPPORTED__ **/






#endif  /* GRAPHICS_RASTPORT_H */
