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.