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