Стандартный драйвер egavga.bgi позволяет работать только с 16-ю цветами.
С помощью этого модуля вы сможете выводить графику с 256 цветами в режимах
Внимание: 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.