From 720a3fb050629e452dafa5533df479aa1613792b Mon Sep 17 00:00:00 2001 From: peter Date: Mon, 20 Dec 1999 11:22:38 +0000 Subject: [PATCH] * modes moved to interface * integer -> smallint --- rtl/linux/ggigraph.inc | 135 ++++++++++++----------------------------- rtl/linux/graphh.inc | 108 +++++++++++++++++++++++++++------ rtl/linux/vgagraph.inc | 70 +++------------------ 3 files changed, 133 insertions(+), 180 deletions(-) diff --git a/rtl/linux/ggigraph.inc b/rtl/linux/ggigraph.inc index 288780f90e..368c3d4b28 100644 --- a/rtl/linux/ggigraph.inc +++ b/rtl/linux/ggigraph.inc @@ -26,70 +26,7 @@ var { --------------------------------------------------------------------- GGI bindings [(c) 1999 Sebastian Guenther] ---------------------------------------------------------------------} - -Const - { Supported modes } - {(sg) GTEXT deactivated because we need mode #0 as default mode} - {GTEXT = 0; Compatible with VGAlib v1.2 } - G320x200x16 = 1; - G640x200x16 = 2; - G640x350x16 = 3; - G640x480x16 = 4; - G320x200x256 = 5; - G320x240x256 = 6; - G320x400x256 = 7; - G360x480x256 = 8; - G640x480x2 = 9; - - G640x480x256 = 10; - G800x600x256 = 11; - G1024x768x256 = 12; - - G1280x1024x256 = 13; { Additional modes. } - - G320x200x32K = 14; - G320x200x64K = 15; - G320x200x16M = 16; - G640x480x32K = 17; - G640x480x64K = 18; - G640x480x16M = 19; - G800x600x32K = 20; - G800x600x64K = 21; - G800x600x16M = 22; - G1024x768x32K = 23; - G1024x768x64K = 24; - G1024x768x16M = 25; - G1280x1024x32K = 26; - G1280x1024x64K = 27; - G1280x1024x16M = 28; - - G800x600x16 = 29; - G1024x768x16 = 30; - G1280x1024x16 = 31; - - G720x348x2 = 32; { Hercules emulation mode } - - G320x200x16M32 = 33; { 32-bit per pixel modes. } - G640x480x16M32 = 34; - G800x600x16M32 = 35; - G1024x768x16M32 = 36; - G1280x1024x16M32 = 37; - - { additional resolutions } - G1152x864x16 = 38; - G1152x864x256 = 39; - G1152x864x32K = 40; - G1152x864x64K = 41; - G1152x864x16M = 42; - G1152x864x16M32 = 43; - - G1600x1200x16 = 44; - G1600x1200x256 = 45; - G1600x1200x32K = 46; - G1600x1200x64K = 47; - G1600x1200x16M = 48; - G1600x1200x16M32 = 49; - +const GLASTMODE = 49; ModeNames: array[0..GLastMode] of PChar = ('[]', {Let GGI choose a default mode} @@ -172,25 +109,25 @@ type const libggi = 'ggi'; -function ggiInit: Integer; cdecl; external libggi; +function ggiInit: Longint; cdecl; external libggi; procedure ggiExit; cdecl; external libggi; function ggiOpen(display: PChar; args: Array of const): TGGIVisual; cdecl; external libggi; -function ggiClose(vis: TGGIVisual): Integer; cdecl; external libggi; -function ggiParseMode(s: PChar; var m: TGGIMode): Integer; cdecl; external libggi; -function ggiSetMode(visual: TGGIVisual; var tm: TGGIMode): Integer; cdecl; external libggi; -function ggiGetMode(visual: TGGIVisual; var tm: TGGIMode): Integer; cdecl; external libggi; -function ggiCheckMode(visual: TGGIVisual; var tm: TGGIMode): Integer; cdecl; external libggi; +function ggiClose(vis: TGGIVisual): Longint; cdecl; external libggi; +function ggiParseMode(s: PChar; var m: TGGIMode): Longint; cdecl; external libggi; +function ggiSetMode(visual: TGGIVisual; var tm: TGGIMode): Longint; cdecl; external libggi; +function ggiGetMode(visual: TGGIVisual; var tm: TGGIMode): Longint; cdecl; external libggi; +function ggiCheckMode(visual: TGGIVisual; var tm: TGGIMode): Longint; cdecl; external libggi; function ggiMapColor(vis: TGGIVisual; Color: TGGIColor): TGGIPixel; cdecl; external libggi; -function ggiPutPixel(vis: TGGIVisual; x, y: Integer; pixel: TGGIPixel): Integer; cdecl; external libggi; -function ggiGetPixel(vis: TGGIVisual; x, y: Integer; var pixel: TGGIPixel): Integer; cdecl; external libggi; -function ggiDrawBox(vis: TGGIVisual; x, y, w, h: Integer): Integer; cdecl; external libggi; -function ggiPutBox(vis: TGGIVisual; x, y, w, h: Integer; var buffer): Integer; cdecl; external libggi; -function ggiGetBox(vis: TGGIVisual; x, y, w, h: Integer; var buffer): Integer; cdecl; external libggi; +function ggiPutPixel(vis: TGGIVisual; x, y: Longint; pixel: TGGIPixel): Longint; cdecl; external libggi; +function ggiGetPixel(vis: TGGIVisual; x, y: Longint; var pixel: TGGIPixel): Longint; cdecl; external libggi; +function ggiDrawBox(vis: TGGIVisual; x, y, w, h: Longint): Longint; cdecl; external libggi; +function ggiPutBox(vis: TGGIVisual; x, y, w, h: Longint; var buffer): Longint; cdecl; external libggi; +function ggiGetBox(vis: TGGIVisual; x, y, w, h: Longint; var buffer): Longint; cdecl; external libggi; -function ggiGetPalette(vis: TGGIVisual; s, len: Integer; var cmap: TGGIColor): Integer; cdecl; external libggi; -function ggiSetPalette(vis: TGGIVisual; s, len: Integer; var cmap: TGGIColor): Integer; cdecl; external libggi; +function ggiGetPalette(vis: TGGIVisual; s, len: Longint; var cmap: TGGIColor): Longint; cdecl; external libggi; +function ggiSetPalette(vis: TGGIVisual; s, len: Longint; var cmap: TGGIColor): Longint; cdecl; external libggi; var @@ -233,7 +170,7 @@ begin ggiSetMode(Visual, CurrentMode); end; -function ClipCoords(var x, y: Integer): Boolean; +function ClipCoords(var x, y: SmallInt): Boolean; { Adapt to viewport, return TRUE if still in viewport, false if outside viewport} begin @@ -249,7 +186,7 @@ begin end; -procedure ggi_directpixelproc(X, Y: Integer); +procedure ggi_directpixelproc(X, Y: smallint); var Color, CurCol: TGGIPixel; begin @@ -278,13 +215,13 @@ begin ggiPutPixel(Visual, x, y, Color); end; -procedure ggi_putpixelproc(X,Y: Integer; Color: Word); +procedure ggi_putpixelproc(X,Y: smallint; Color: Word); begin If Not ClipCoords(X,Y) Then exit; ggiputpixel(Visual,x, y, Color); end; -function ggi_getpixelproc (X,Y: Integer): word; +function ggi_getpixelproc (X,Y: smallint): word; Var i : TGGIPixel; @@ -308,13 +245,13 @@ type Data: record end; end; -procedure ggi_putimageproc (X,Y: Integer; var Bitmap; BitBlt: Word); +procedure ggi_putimageproc (X,Y: smallint; var Bitmap; BitBlt: Word); begin With TBitMap(BitMap) do ggiputbox(Visual,x, y, width, height, @Data); end; -procedure ggi_getimageproc (X1,Y1,X2,Y2: Integer; Var Bitmap); +procedure ggi_getimageproc (X1,Y1,X2,Y2: smallint; Var Bitmap); begin with TBitmap(Bitmap) do begin @@ -324,34 +261,34 @@ begin end; end; -function ggi_imagesizeproc (X1,Y1,X2,Y2: Integer): longint; +function ggi_imagesizeproc (X1,Y1,X2,Y2: smallint): longint; begin // 32 bits per pixel -- change ASAP !! ggi_imagesizeproc := SizeOf(TBitmap) + (x2 - x1 + 1) * (y2 - y1 + 1) * SizeOF(longint); end; -procedure ggi_hlineproc (x, x2,y : integer); +procedure ggi_hlineproc (x, x2,y : smallint); begin end; -procedure ggi_vlineproc (x,y,y2: integer); +procedure ggi_vlineproc (x,y,y2: smallint); begin end; -procedure ggi_patternlineproc (x1,x2,y: integer); +procedure ggi_patternlineproc (x1,x2,y: smallint); begin end; -procedure ggi_ellipseproc (X,Y: Integer;XRadius: word; +procedure ggi_ellipseproc (X,Y: smallint;XRadius: word; YRadius:word; stAngle,EndAngle: word; fp: PatternLineProc); begin end; -procedure ggi_lineproc (X1, Y1, X2, Y2 : Integer); +procedure ggi_lineproc (X1, Y1, X2, Y2 : smallint); begin end; -procedure ggi_getscanlineproc (X1, X2, Y : integer; var data); +procedure ggi_getscanlineproc (X1, X2, Y : smallint; var data); begin end; @@ -372,7 +309,7 @@ procedure ggi_restorestateproc; begin end; -procedure ggi_setrgbpaletteproc(ColorNum, RedValue, GreenValue, BlueValue: Integer); +procedure ggi_setrgbpaletteproc(ColorNum, RedValue, GreenValue, BlueValue: smallint); Var Col : TGGIcolor; @@ -383,8 +320,8 @@ begin ggisetpalette(Visual,ColorNum,1,col); end; -procedure ggi_getrgbpaletteproc (ColorNum: integer; - var RedValue, GreenValue, BlueValue: Integer); +procedure ggi_getrgbpaletteproc (ColorNum: smallint; + var RedValue, GreenValue, BlueValue: smallint); Var Col : TGGIColor; @@ -419,7 +356,7 @@ function QueryAdapterInfo:PModeInfo; var ModeInfo: TGGIMode; - procedure AddGGIMode(i: Integer); // i is the mode number + procedure AddGGIMode(i: smallint); // i is the mode number var mode: TModeInfo; begin @@ -461,7 +398,7 @@ var end; var - i: Integer; + i: longint; OldMode: TGGIMode; begin QueryAdapterInfo := ModeList; @@ -500,9 +437,13 @@ end; { $Log$ -Revision 1.6 1999-12-11 23:41:39 jonas +Revision 1.7 1999-12-20 11:22:38 peter + * modes moved to interface + * integer -> smallint + +Revision 1.6 1999/12/11 23:41:39 jonas * changed definition of getscanlineproc to "getscanline(x1,x2,y: - integer; var data);" so it can be used by getimage too + smallint; var data);" so it can be used by getimage too * changed getimage so it uses getscanline * changed floodfill, getscanline16 and definitions in Linux include files so they use this new format diff --git a/rtl/linux/graphh.inc b/rtl/linux/graphh.inc index 29f8bd5a71..5b2d859b56 100644 --- a/rtl/linux/graphh.inc +++ b/rtl/linux/graphh.inc @@ -1,23 +1,91 @@ -{ - $Id$ - This file is part of the Free Pascal run time library. - Copyright (c) 1999 by Florian Klaempfl - +{ + $Id$ + This file is part of the Free Pascal run time library. + Copyright (c) 1999 by Florian Klaempfl + Graph include file for linux. - - See the file COPYING.FPC, included in this distribution, - for details about the copyright. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - **********************************************************************} - - -{ + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + **********************************************************************} + + +Const + { Supported modes } + {(sg) GTEXT deactivated because we need mode #0 as default mode} + {GTEXT = 0; Compatible with VGAlib v1.2 } + G320x200x16 = 1; + G640x200x16 = 2; + G640x350x16 = 3; + G640x480x16 = 4; + G320x200x256 = 5; + G320x240x256 = 6; + G320x400x256 = 7; + G360x480x256 = 8; + G640x480x2 = 9; + + G640x480x256 = 10; + G800x600x256 = 11; + G1024x768x256 = 12; + + G1280x1024x256 = 13; { Additional modes. } + + G320x200x32K = 14; + G320x200x64K = 15; + G320x200x16M = 16; + G640x480x32K = 17; + G640x480x64K = 18; + G640x480x16M = 19; + G800x600x32K = 20; + G800x600x64K = 21; + G800x600x16M = 22; + G1024x768x32K = 23; + G1024x768x64K = 24; + G1024x768x16M = 25; + G1280x1024x32K = 26; + G1280x1024x64K = 27; + G1280x1024x16M = 28; + + G800x600x16 = 29; + G1024x768x16 = 30; + G1280x1024x16 = 31; + + G720x348x2 = 32; { Hercules emulation mode } + + G320x200x16M32 = 33; { 32-bit per pixel modes. } + G640x480x16M32 = 34; + G800x600x16M32 = 35; + G1024x768x16M32 = 36; + G1280x1024x16M32 = 37; + + { additional resolutions } + G1152x864x16 = 38; + G1152x864x256 = 39; + G1152x864x32K = 40; + G1152x864x64K = 41; + G1152x864x16M = 42; + G1152x864x16M32 = 43; + + G1600x1200x16 = 44; + G1600x1200x256 = 45; + G1600x1200x32K = 46; + G1600x1200x64K = 47; + G1600x1200x16M = 48; + G1600x1200x16M32 = 49; + + +{ $Log$ - Revision 1.1 1999-11-08 15:06:17 peter + Revision 1.2 1999-12-20 11:22:38 peter + * modes moved to interface + * integer -> smallint + + Revision 1.1 1999/11/08 15:06:17 peter * needed - -} + +} diff --git a/rtl/linux/vgagraph.inc b/rtl/linux/vgagraph.inc index f4562ffb60..2786813474 100644 --- a/rtl/linux/vgagraph.inc +++ b/rtl/linux/vgagraph.inc @@ -84,68 +84,8 @@ Const ClipY2: LongInt; ff: pointer; end; + Const - { VGA modes } - GTEXT = 0; { Compatible with VGAlib v1.2 } - G320x200x16 = 1; - G640x200x16 = 2; - G640x350x16 = 3; - G640x480x16 = 4; - G320x200x256 = 5; - G320x240x256 = 6; - G320x400x256 = 7; - G360x480x256 = 8; - G640x480x2 = 9; - - G640x480x256 = 10; - G800x600x256 = 11; - G1024x768x256 = 12; - - G1280x1024x256 = 13; { Additional modes. } - - G320x200x32K = 14; - G320x200x64K = 15; - G320x200x16M = 16; - G640x480x32K = 17; - G640x480x64K = 18; - G640x480x16M = 19; - G800x600x32K = 20; - G800x600x64K = 21; - G800x600x16M = 22; - G1024x768x32K = 23; - G1024x768x64K = 24; - G1024x768x16M = 25; - G1280x1024x32K = 26; - G1280x1024x64K = 27; - G1280x1024x16M = 28; - - G800x600x16 = 29; - G1024x768x16 = 30; - G1280x1024x16 = 31; - - G720x348x2 = 32; { Hercules emulation mode } - - G320x200x16M32 = 33; { 32-bit per pixel modes. } - G640x480x16M32 = 34; - G800x600x16M32 = 35; - G1024x768x16M32 = 36; - G1280x1024x16M32 = 37; - - { additional resolutions } - G1152x864x16 = 38; - G1152x864x256 = 39; - G1152x864x32K = 40; - G1152x864x64K = 41; - G1152x864x16M = 42; - G1152x864x16M32 = 43; - - G1600x1200x16 = 44; - G1600x1200x256 = 45; - G1600x1200x32K = 46; - G1600x1200x64K = 47; - G1600x1200x16M = 48; - G1600x1200x16M32 = 49; - GLASTMODE = 49; ModeNames : Array[0..GLastMode] of string [18] = ('Text', @@ -231,7 +171,7 @@ end; procedure libvga_restorevideostate; begin - vga_setmode(Gtext); + vga_setmode(0); end; const @@ -500,7 +440,11 @@ end; { $Log$ -Revision 1.3 1999-12-11 23:41:39 jonas +Revision 1.4 1999-12-20 11:22:38 peter + * modes moved to interface + * integer -> smallint + +Revision 1.3 1999/12/11 23:41:39 jonas * changed definition of getscanlineproc to "getscanline(x1,x2,y: integer; var data);" so it can be used by getimage too * changed getimage so it uses getscanline