La Commande Numérique sur la Production Bois
Date de publication : 06/03/2010. Date de mise à jour : 03/07/2011.
Open_gph.PAS
Open_gph.PAS
Unit OPEN_GPH;
Interface
PROCEDURE Initialise_Graphique;
Implementation
Uses crt,graph,var_num,drives;
Type ResolutionPreference = (Lower, Higher);
Procedure Abort(Msg : string );
var Ch:Char ;
begin
Writeln(Msg, ' : ' , GraphErrorMsg(GraphResult));
Writeln(' Erreur - d ' ' initialisation graphiques EGA/VGA. ' );
Writeln(' pour d ' ' éventuelles modifications consulter: ' );
Writeln(' A.ARA programming ' );
Writeln(' ' );
Writeln(' 64150 Mourenx ville - France. ' );
Ch:=Readkey;
Halt(1 );
end ;
PROCEDURE TestGraphError(GraphErr: integer );
var ch:Char ;
begin
if GraphErr <> grOk Then
begin
Writeln(' Erreur graphique : ' , GraphErrorMsg(GraphErr));
Writeln(' Erreur - d ' ' initialisation graphiques EGA/VGA. ' );
Writeln(' pour d ' ' éventuelles modifications consulter: ' );
Writeln(' A.ARA programming ' );
Writeln(' ' );
Writeln(' 64150 Mourenx ville - France. ' );
Ch := ReadKey;
Halt(1 );
end ;
end ;
PROCEDURE Initialise_Graphique;
var
Err, I : integer ;
StartX, StartY: integer ;
Resolution : ResolutionPreference;
s : STRING ;
ch:Char ;
begin
if RegisterBGIdriver(@EGAVGADrive) < 0 then Abort(' EGA/VGA ' );
Resolution := Lower;
Resolution := Higher;
Ch := ' ' ;
GraphDriver := Detect;
DetectGraph(GraphDriver, GraphMode);
TestGraphError(GraphResult);
CASE GraphDriver OF
CGA : begin
MaxDelta:=7 ;
GraphDriver := CGA;
GraphMode := CGAC1;
end ;
MCGA : begin
MaxDelta:=7 ;
CASE GraphMode of
MCGAMed, MCGAHi: GraphMode:= MCGAC1;
end ;
end ;
EGA : begin
MaxDelta := 16 ;
if Resolution = Lower Then GraphMode := EGALo
else
GraphMode := EGAHi;
end ;
EGA64: begin
MaxDelta := 16 ;
if Resolution = Lower Then GraphMode := EGA64Lo
else
GraphMode := EGA64Hi;
end ;
HercMono: MaxDelta := 16 ;
EGAMono : MaxDelta := 16 ;
PC3270 : begin
MaxDelta := 7 ;
GraphDriver := CGA;
GraphMode := CGAC1;
end ;
ATT400 : CASE GraphMode OF
ATT400C1,
ATT400C2,
ATT400Med,
ATT400Hi : begin
MaxDelta := 7 ;
GraphMode := ATT400C1;
end ;
end ;
VGA : begin
MaxDelta := 16 ;
end ;
end ;
if RegisterBGIdriver(@EGAVGADrive) < 0 then Abort(' EGA/VGA ' );
if RegisterBGIfont(@LittStyle) < 0 then Abort(' Small ' );
InitGraph(GraphDriver, GraphMode, ' ' );
TestGraphError(GraphResult);
SetTextStyle(DefaultFont, HorizDir, 1 );
CrtYmax:=GetMaxY div 16 ;
MAX_X := Graph.GetMaxX;
MaX_Y := Graph.GetMaxY;
for i:=1 To 81 DO CrtX[i]:=i*8 ;
CrtX[0 ]:=3 ;
for i:=1 TO 31 DO CrtY[i]:=i*16 ;
CrtY[0 ]:=3 ;
end ;
end .
|
Les sources présentées sur cette page sont libres de droits
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ©
2011 A. Ara. Aucune reproduction, même partielle, ne peut être
faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc.
sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à
trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.