#StackBounty: #display #display-resolution #xrandr xrandr: how to shift output that is lower resolution than the display native resolut…

Bounty: 50

I had an accident, and my laptop with me. As a result, I have sore rib, and my laptop has a sore screen: the rightmost ~25% of my laptop’s built-in display does not display anything, from top to bottom.

How do I convince Ubuntu that my display is only as large as the working part – about the left 75% of the screen?

I had managed to generate a modeline using cvt, and then to use it with xrandr (using info from here and here), however, that unfortunately made Ubuntu pretend the left side of my screen wasn’t working, rather than the right side, which made the situation worse.

I’ve tried to move the area where the screen is shown using the --pos flag for xrandr --output (for example, as a test I ran xrandr --output eDP-1 --mode 1504x1080 --pos 100x100, but the values I enter for the --pos flag do not seem to have any effect.

Yes, it might be time to buy a new laptop (or at least a screen), but I’m currently travelling and need to make this laptop work for at least a few months. Thanks for your help!


Here is more information on what I’ve tried.

Step 1: Generate a modeline with the desired resolution:

$ cvt 1440 1080
# 1440x1080 59.99 Hz (CVT 1.56M3) hsync: 67.19 kHz; pclk: 129.00 MHz
Modeline "1440x1080_60.00"  129.00  1440 1528 1680 1920  1080 1083 1087 1120 -hsync +vsync

I can successfully set this as the output using xrandr. This just lowers the resolution, though – what I need to do is actually shift the final output to the left.

Following instructions from here and here, I think I should be able to do that by setting the horizontal back porch to zero to indicate that there should be no blank pixels on the left side of the screen.

This should be done by adjusting the third and fourth number in my modeline, resulting in this one:

Modeline "1440x1080_60.00_p240"  129.00  1440 1768 1920 1920  1080 1083 1087 1120 -hsync +vsync

Setting that as the output mode via xrandr made the screen flicker badly before stopping working.

Interestingly, I also tried this modeline, which I thought would reduce the back porch to just 40 pixels:

xrandr --newmode "1440x1080_60.00_p200"  129.00  1440 1728 1880 1920  1080 1083 1087 1120 -hsync +vsync

…but this did not shift the output at all, but neither did it result in flickering. The result looked exactly as with the original modeline I’d generated (that wasn’t supposed to be shifted at all).

Anyone understand what’s going on?

Get this bounty!!!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.