====== Различные графические режимы ======
Стандартный драйвер egavga.bgi позволяет работать только с 16-ю цветами.
С помощью этого модуля вы сможете выводить графику с 256 цветами в режимах
* 320x200
* 640x480
* 800x600
* 1024x768
**Внимание:** SVGA режим может не работать на некоторых мониторах!
Для этих графических режимов надо подключить модуль SVGA_ в разделе Uses
и использовать SetVideoMode вместо InitGraph.
Unit SVGA_;
Interface
Uses Graph;
const
{ 256 colors }
v320x200 : byte = 0;
v640x480 : byte = 2;
v800x600 : byte = 3;
v1024x768 : byte = 4;
v1280x1024 : byte = 5;
Procedure SetVideoMode(Mode: byte);
Implementation
procedure SVGA_DRV; external; { подключаем внешний объектный файл с драйвером SVGA }
{$L svgadrv.obj}
Procedure SetVideoMode;
Var Gd,Gm: integer;
Begin
Gd:= InstallUserDriver('SVGA256',nil);
if Gd= grError { Table full? } then
begin
writeln('Error of installing driver.');
Halt(1);
end;
if RegisterBGIdriver(@SVGA_DRV) < 0 then
begin
Writeln(GraphErrorMsg(GraphResult));
halt(2);
end;
Gm:=Mode;
InitGraph(Gd,Gm,'');
End;
END.
===== Пример =====
uses Graph,SVGA_;
var MX,MY: integer;
function I2S(i: integer): string;
var s: string[6];
begin
str(i,s);
i2s:=s
end;
BEGIN
writeln('Press Enter.');
readln;
SetVideoMode(v800x600);
SetColor(GetMaxColor div 3);
MX:=GetMaxX;
MY:=GetMaxY;
line(0,0,MX,MY);
OutTextXY(MX div 3,MY div 2,i2s(MX)+','+i2s(MY));
readln;
CloseGraph;
END.
[[http://forum.sources.ru/index.php?act=Attach&type=post&id=338863|Скачать svga_tst.zip]]