12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- 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;
- 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;
- end.
|