0. All of this is easier to do if you have a portable Mac, since you can configure the external display while viewing everything on the built-in display. You can do it with only the external display (your big TV, that is), but it's tedious.
1. Get the proper cable to connect your Mac to the display (VGI, DVI, or DVI->HDMI, depending on your display's inputs; if you're using a portable Mac with only mini-DVI you'll need the adapter *and* a cable).
2. Connect the display and turn on the Mac. Launch the SwitchResX Control application (if all you're doing is setting up a custom configuration, you don't need the preference pane and thus don't need APE either).
3. In the SwitchResX Control application, select the display you want to configure in the "Settings of:" menu (if it isn't selected already) and click the "Display" tab. Then click the "Export DDC" button and select a location to save the file.
4. Using the text editor of your choice (TextEdit works, or you may have a preference for something else) open that file you just exported. You should see at least one Monitor Description Block (mine has two, labeled Descriptor #0 and Descriptor #1). This should give you a starting point. Mine looks like this:
Code:
Descriptor #0 is Timing definition:
Mode = 1920 x 540 @ 60Hz
H. Active...............1920 pixels
H. Blanking.............280 pixels
V. Active...............540 lines
V. Blanking.............22 lines
HSync Offset............88 pixels
HSync Pulse Width.......44 pixels
VSync Offset............2 lines
VSync Pulse Width.......5 lines
Pixel Clock.............74.25MHz
Horizontal freq.........33.75kHz
Vertical freq...........60.05Hz
H Image Size............16mm
V Image Size............9mm
H Border................0 pixels
V Border................0 lines
Interlaced
Sync: Digital separate with
* Positive vertical polarity
* Positive horizontal polarity
Note that the Mode is described as 1920 x 540 @ 60Hz, interlaced. It's actually 1920 x 1080, interlaced. I'm not sure why the vertical resolution is half what it should be there, but that's an important detail to note. If yours looks like it's half what it should be, you'll have to double it below. Use your common sense here.
The next step depends on what problem you need to solve. If you have a picture and you just need to adjust its position and/or size, you have the easier task and these instructions can help you. If you don't have a picture at all, the values provided by your display are invalid, and you'll have to do some research to find valid values (I can't help you find them). Search and/or ask on this forum, and also try Google.
5. Click on the "Custom" tab in the SwitchResX Control app. Click the "+" button to create a new resolution. Select "Custom" in the menu at the top (as opposed to "Scaled"). Start by entering the values in the Monitor Description Block you exported and opened in a text editor. The thing to realize as you get started is that all the numbers interact with each other, and as you change one value the application will recalculate the others if they're affected by the change. At a given resolution, the number of horizontal pixels and the number of vertical lines in each box always have to add to the same totals, and you can get those values by adding the "Active" and "Blanking" values in the Monitor Timing Block. To stick with my display, the horizontal pixel values must add up to 2200 (1920 (H. Active) + 280 (H. Blanking)), and the vertical line values must add up to 1124 (2 * (540 (V. Active) + 22 (V. Blanking))). The horizontal and vertical scan rates are calculated using those total values and the pixel clock value.
This is a very important concept to understand. With a constant pixel clock value and constant totals of Active + Blanking in both axes, the scan rates should also remain constant. If you have changed your active, porch, or sync width values and the scan rates don't add up, you won't get any picture. To use my display as an example again:
Code:
Pixel Clock 74.25 Mhz, Interlaced
Horizontal Vertical
Active: 1920 pixels 1080 lines
Frt. porch: 88 pixels 4 lines
Sync width: 44 pixels 10 lines
Back porch: 148 pixels 30 lines
Scan rate: 33.75 kHz 60.05 Hz
Note that 1920 + 88 + 44 + 148 = 2200, and 1080 + 4 + 10 + 30 = 1124.
6a. Adjust the values to fit your display (heh). This is the trial-and-error portion of the task, and is also slightly counterintuitive. You can get an idea of the adjustments you need to make if you use DisplayConfigX to display an "Image Size Test" (in the "Test Screen" tab). It'd make life easier if that were built into SwitchResX, but anyway:
If you need to shrink the visible area, decrease the Active value and increase the front or back porch values by the same amount. If you need to increase it, do the opposite. It helps to work incrementally (say, by multiples of 8) and save and test your work as you go along. Note that you may not actually need to restart the computer: I found that I could just unplug the HDMI cable from the back of my display and plug it back in, and the new settings would take effect. Remember to click "OK" (and not "Cancel") in the Timing Parameters window, then "Apply" in the main window, before you do this, or before you reboot. Otherwise your changes will be lost.
The porch values are counterintuitive. The horizontal "front porch" is the right edge of the screen (not the left as you might expect); the vertical "front porch" is the bottom edge of the screen. To move the image to the right, decrease the horizontal front porch and increase the horizontal back porch; to move it to the left increase the front porch and decrease the back porch. To move the image up, increase the vertical front porch and decrease the back porch, to move it down, decrease the front porch and increase the back porch. Again, it helps to save and restart or disconnect/reconnect the display to test these adjustments. The "Quick change" buttons in the bottom right-hand corner of the Timing Parameters window will adjust the porches for you, but note that in older versions the buttons were reversed (down means up and left means right, if you catch my drift). That's been fixed in version 3.7.6, apparently.
Also, remember as you adjust porch values that you shouldn't ever need to change the sync width.
6b. You know how I said you might not need to restart the computer? That's not actually 100% true for some displays. When I boot my computer with the display connected, the image is shifted to one side. If I subsequently change resolutions in software or disconnect and reconnect the display, the image will shift back. I got around this problem by first coming up with a configuration that was properly aligned after such a switch. After I had that I rebooted and estimated how far the image was shifted to one side. I then adjusted the porch values, saved, rebooted, and tested again. I now have two configurations, one for "fresh boot" that's adjusted for that sideways shift, and one I can use if I've changed the resolution for some reason. After all that, my default settings are now:
Code:
Pixel Clock 74.25 Mhz, Interlaced
Horizontal Vertical
Active: 1834 pixels 1024 lines
Frt. porch: 120 pixels 40 lines
Sync width: 44 pixels 10 lines
Back porch: 202 pixels 50 lines
Scan rate: 33.75 kHz 60.05 Hz
Again, 1834 + 120 + 44 + 202 = 2200, and 1024 + 40 + 10 + 50 = 1124. The Pixel Clock and both scan rates are the same as I found in the DDC.
Note also that if you have the same sideways shift problem, your two resolutions can't be identical (the system won't know which one to select). I made mine different by two pixels of horizontal resolution, which turns out to be rounded off in practice anyway (so one's 1832 x 1024, and the other's 1834 x 1024, with porch values adjusted accordingly, but they both look the same).
At this point you should be able to align your desktop to your display by iterating through these steps, applying your changes, and either disconnecting and reconnecting the display or rebooting.
7. If ever you go horribly wrong and go from having a misaligned picture to having no picture at all, you'll have to delete the override installed by SwitchResX. Boot the computer into Safe Mode, launch the SwitchResX Control app again, and click the "Factory settings" button, then the "Apply" button, and reboot.
And as a preemptive strike: no, I probably don't own your display and don't know the numbers for it offhand, and my consulting rate is $45/hr (really!).
