1 {
2     This file is part of the Free Pascal run time library.
3 
4     A file in Amiga system run time library.
5     Copyright (c) 1998 by Nils Sjoholm
6     member of the Amiga RTL development team.
7 
8     See the file COPYING.FPC, included in this distribution,
9     for details about the copyright.
10 
11     This program is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 
15  **********************************************************************}
16 
17 {
18     History:
19 
20     Update for AmigaOS 3.9.
21     31 Jan 2003.
22 
23     nils.sjoholm@mailbox.swipnet.se
24 }
25 
26 unit prtgfx;
27 
28 INTERFACE
29 
30 uses exec,utility;
31 Const
32 
33     PCMYELLOW           = 0;            { byte index for yellow }
34     PCMMAGENTA          = 1;            { byte index for magenta }
35     PCMCYAN             = 2;            { byte index for cyan }
36     PCMBLACK            = 3;            { byte index for black }
37     PCMBLUE             = PCMYELLOW;    { byte index for blue }
38     PCMGREEN            = PCMMAGENTA;   { byte index for green }
39     PCMRED              = PCMCYAN;      { byte index for red }
40     PCMWHITE            = PCMBLACK;     { byte index for white }
41 
42 Type
43     PUWORD = ^UWORD;
44 
45     pColorEntry = ^tColorEntry;
46     tcolorEntry = record
47         colorLong       : ULONG;      { quick access to all of YMCB }
48         colorByte       : Array [0..3] of Byte; { 1 entry for each of YMCB }
49         colorSByte      : Array [0..3] of Shortint; { ditto (except signed) }
50     end;
51 
52     pPrtInfo = ^tPrtInfo;
53     tPrtInfo = record { printer info }
54         pi_render       : Pointer;      { PRIVATE - DO NOT USE! }
55         pi_rp           : Pointer;      { PRIVATE - DO NOT USE! (RastPortPtr)}
56         pi_temprp       : Pointer;      { PRIVATE - DO NOT USE! (RastPortPtr)}
57         pi_RowBuf       : Pointer;      { PRIVATE - DO NOT USE! }
58         pi_HamBuf       : Pointer;      { PRIVATE - DO NOT USE! }
59         pi_ColorMap     : pcolorEntry;  { PRIVATE - DO NOT USE! }
60         pi_ColorInt     : pcolorEntry;  { color intensities for entire row }
61         pi_HamInt       : pcolorEntry;  { PRIVATE - DO NOT USE! }
62         pi_Dest1Int     : pcolorEntry;  { PRIVATE - DO NOT USE! }
63         pi_Dest2Int     : pcolorEntry;  { PRIVATE - DO NOT USE! }
64         pi_ScaleX       : Pointer;      { array of scale values for X }
65         pi_ScaleXAlt    : Pointer;      { PRIVATE - DO NOT USE! }
66         pi_dmatrix      : Pointer;      { pointer to dither matrix }
67         pi_TopBuf       : Pointer;      { PRIVATE - DO NOT USE! }
68         pi_BotBuf       : Pointer;      { PRIVATE - DO NOT USE! }
69 
70         pi_RowBufSize   : Word;         { PRIVATE - DO NOT USE! }
71         pi_HamBufSize   : Word;         { PRIVATE - DO NOT USE! }
72         pi_ColorMapSize : Word;         { PRIVATE - DO NOT USE! }
73         pi_ColorIntSize : Word;         { PRIVATE - DO NOT USE! }
74         pi_HamIntSize   : Word;         { PRIVATE - DO NOT USE! }
75         pi_Dest1IntSize : Word;         { PRIVATE - DO NOT USE! }
76         pi_Dest2IntSize : Word;         { PRIVATE - DO NOT USE! }
77         pi_ScaleXSize   : Word;         { PRIVATE - DO NOT USE! }
78         pi_ScaleXAltSize : Word;        { PRIVATE - DO NOT USE! }
79 
80         pi_PrefsFlags   : Word;         { PRIVATE - DO NOT USE! }
81         pi_special      : ULONG;        { PRIVATE - DO NOT USE! }
82         pi_xstart       : Word;         { PRIVATE - DO NOT USE! }
83         pi_ystart       : Word;         { PRIVATE - DO NOT USE! }
84         pi_width        : Word;         { source width (in pixels) }
85         pi_height       : Word;         { PRIVATE - DO NOT USE! }
86         pi_pc           : ULONG;        { PRIVATE - DO NOT USE! }
87         pi_pr           : ULONG;        { PRIVATE - DO NOT USE! }
88         pi_ymult        : Word;         { PRIVATE - DO NOT USE! }
89         pi_ymod         : Word;         { PRIVATE - DO NOT USE! }
90         pi_ety          : Shortint;     { PRIVATE - DO NOT USE! }
91         pi_xpos         : Word;         { offset to start printing picture }
92         pi_threshold    : Word;         { threshold value (from prefs) }
93         pi_tempwidth    : Word;         { PRIVATE - DO NOT USE! }
94         pi_flags        : Word;         { PRIVATE - DO NOT USE! }
95         { V44 additions }
96         pi_ReduceBuf : PUWORD;          { PRIVATE - DO NOT USE! }
97         pi_ReduceBufSize : UWORD;       { PRIVATE - DO NOT USE! }
98         pi_SourceHook : PHook;          { PRIVATE - DO NOT USE! }
99         pi_InvertHookBuf : PULONG;      { RESERVED - DO NOT USE! }
100     end;
101 
102 IMPLEMENTATION
103 
104 end.
105