home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d1xx / d183 / pcq.lha / PCQ / Include / Graphics.i < prev    next >
Text File  |  1989-02-26  |  3KB  |  119 lines

  1.  
  2.  
  3. {
  4.     Graphics.i
  5.         This is the include file needed to use graphics routines
  6.     from PCQ Pascal.  Before you use any of these routines, be
  7.     sure to open the Graphics library and get a valid library pointer into
  8.     GfxBase.
  9. }
  10.  
  11. type
  12.     PlanePtr = Address;
  13.  
  14.     TmpRas = record
  15.     rasPtr : Address;
  16.     size   : Integer;
  17.     end;
  18.     TmpRasPtr = ^TmpRas;
  19.  
  20.     BitMap = record
  21.     BytesPerRow : Short;
  22.     Rows        : Short;
  23.     Flags        : Byte;
  24.     Depth        : Byte;
  25.     Pad        : Short;
  26.     Planes        : array [0..7] of PlanePtr;
  27.     end;
  28.     BitMapPtr = ^BitMap;
  29.  
  30.     RastPort = record
  31.     layer    : Address;
  32.     bitMap   : BitMapPtr;
  33.     AreaPtrn : ^Short;
  34.     tmpRas   : TmpRasPtr;
  35.     areaInfo : Address;
  36.     gelsInfo : Address;
  37.     Mask     : Byte;
  38.     FgPen    : Byte;
  39.     BgPen    : Byte;
  40.     AOlPen   : Byte;
  41.     DrawMode : Byte;
  42.     AreaPtSz : Byte;
  43.     linpatcnt: Byte;
  44.     Flags    : Short;
  45.     LinePtrn : Short;
  46.     cpx      : Short;
  47.     cpy      : Short;
  48.     minterms : Array [0..7] of Byte;
  49.     PenWidth : Short;
  50.     PenHeight: Short;
  51.     Font     : Address;
  52.     AlgoStyle: Byte;
  53.     TxFlags  : Byte;
  54.     TxHeight : Short;
  55.     TxWidth  : Short;
  56.     TxBaseline : Short;
  57.     TxSpacing : Short;
  58.     RPUser   : Integer;
  59.     wordreserved : array [0..6] of Short;
  60.     longreserved : array [0..1] of Integer;
  61.     reserved : array [0..7] of Byte;
  62.     end;
  63.     RastPortPtr = ^RastPort;
  64.  
  65. var
  66.     GfxBase    : Address;
  67.  
  68. Function AllocRaster(w, h : Integer): PlanePtr;
  69.     forward;
  70. Function AreaDraw(r : RastPortPtr; x, y : Integer): Integer;
  71.     forward;
  72. Procedure AreaEnd(r : RastPortPtr);
  73.     forward;
  74. Function AreaMove(r : RastPortPtr; x, y : Integer): Integer;
  75.     forward;
  76. Procedure BltClear(m : Address; c : Integer; f : Integer);
  77.     forward;
  78. Procedure Draw(r : RastPortPtr; x, y : Integer);
  79.     forward;
  80. Procedure Flood(r : RastPortPtr; f, x, y : Integer);
  81.     forward;
  82. Procedure FreeRaster(p : PlanePtr; w, h : Integer);
  83.     forward;
  84. Procedure InitBitMap(b : BitMapPtr; d, w, h : Integer);
  85.     forward;
  86. Procedure InitRastPort(r : RastPortPtr);
  87.     forward;
  88. Procedure Move(r : RastPortPtr; x, y : Integer);
  89.     forward;
  90. Procedure OwnBlitter;
  91.     forward;
  92. Procedure DisownBlitter;
  93.     forward;
  94. Procedure PolyDraw(r : RastPortPtr; c : Integer; a : Address);
  95.     forward;
  96. Function ReadPixel(r : RastPortPtr; x, y : Integer): Integer;
  97.     forward;
  98. Procedure RectFill(r : RastPortPtr; xn, yn, xx, yx : Integer);
  99.     forward;
  100. Procedure ScrollRaster(r : RastPortPtr; dx, dy, xn, yn, xx, yx : Integer);
  101.     forward;
  102. Procedure SetAPen(r : RastPortPtr; p : Integer);
  103.     forward;
  104. Procedure SetBPen(r : RastPortPtr; p : Integer);
  105.     forward;
  106. Procedure SetDrMd(r : RastPortPtr; m : Integer);
  107.     forward;
  108. Procedure SetRast(r : RastPortPtr; p : Integer);
  109.     forward;
  110. Procedure SetRGB4(p : Address; n, r, g, b : Integer);
  111.     forward;
  112. Function VBeamPos() : Integer;
  113.     forward;
  114. Procedure WaitTOF;
  115.     forward;
  116. Procedure WritePixel(r : RastPortPtr; x, y : Integer);
  117.     forward;
  118.  
  119.