For 4.0.0 and later versions of XFree86, you no longer have to generate modelines at all under most circumstances. Instead they are computed internally by the server at startup time, based on the resolution you specify in the Modes part of the Screen section part of your XFree86 configuration file and the monitor capabilities your X server gets via an EDID query to the monitor.
To change your screen resolution and color depth, simply edit or create a Display section describing it. Here is a sample Screen description from the X configuration file of my laptop:
Section "Screen" Identifier "Screen0" Device "ATI Rage Mobility" Monitor "Monitor0" DefaultDepth 16 Subsection "Display" Depth 16 Modes "1024x768" EndSubsection EndSection
All you will usually need to do is change the numbers in the Mode entry. X will do the rest. If you specify an impossible resolution, it will fall back to the closest approximation that the EDID data from the monitor says it can support.
Therefore, the information in the remainder of this HOWTO is useful only if (a) you have an old, pre-EDID monitor, or (b) your graphics-card driver doesn't support querying the monitor, or (c) you are running an old version of XFree86 (in which case, you should fix your problem by upgrading), or (d) your monitor/card combination can support a resolution above 1920 x 1440 or below 640 x 480, which is the range over which XFree86 has canned modelines.