123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- Program GetModeRange_Example;
- { This program demonstrates how to find all available graph modes }
- uses graph;
- const
- { Currently, only 4, 8, 15 and 16 bit modes are supported
- but this may change in the future }
- gdnames: array[D4bit..D16bit] of string[6] =
- ('4 bit','6 bit','8 bit','12 bit','15 bit','16 bit');
- var
- t: text;
- line : string;
- gd, c, low, high, res: integer;
- begin
- assign(t,'modes.txt');
- rewrite(t);
- close(t);
- for gd := D4bit to D16bit do
- begin
- { Get the available mode numbers for this driver }
- getModeRange(gd,low,high);
- append(t);
- write(t,gdnames[gd]);
- Writeln(t,': low modenr = ',low,', high modenr = ',high);
- close(t);
- { If high is -1,
- no resolutions are supported for this bitdepth }
- if high = -1 then
- begin
- append(t);
- writeln(t,' No modes supported!');
- writeln(t);
- close(t);
- end
- else
- { Enter all supported resolutions for this bitdepth
- and write their characteristics to the file }
- for c := low to high do
- begin
- append(t);
- writeln(t,' testing mode nr ',c);
- close(t);
- initgraph(gd,c,'');
- res := graphresult;
- append(t);
- { An error occurred when entering the mode? }
- if res <> grok then
- writeln(t,grapherrormsg(res))
- else
- begin
- write(t,'maxx: ',getmaxx,', maxy: ',getmaxy);
- Writeln(t,', maxcolor: ',getmaxcolor);
- closegraph;
- end;
- writeln(t);
- close(t);
- end;
- append(t);
- writeln(t);
- close(t);
- end;
- Writeln('All supported modes are listed in modes.txt files');
- end.
|