You are not logged in.

#1 2015-01-27 11:04:16

kentclarkson
Member
Registered: 2015-01-27
Posts: 1

(Workaround) Maintain aspect ratio in Catalyst

Long-time user, first-time poster; on Catalyst 14.12 from Vi0l0's catalyst repo using a Radeon HD 6970. I realize that amdcccle has been missing several things, including a resolution selector and scaling options, for a good while now. However, in resolutions with non-native aspect ratios, I would like for the GPU to expand the image to the top and bottom of the screen while keeping the intended aspect ratio -- like we used to be able to do by clicking the "Enable GPU scaling" checkbox and the "Maintain aspect ratio" radio button in amdcccle.

I checked

$ aticonfig --help

and the closest thing was under "Screen-Related Options":

  --lcd, --lcd-mode=STRING
        Change the LCD mode.  STRING can be one of:
            center
            full

where "center" displays the image in the center of the screen without scaling it, and "full" stretches the image to all four sides, disregarding aspect ratio. (This adds a line to /etc/X11/xorg.conf.)

I've also searched a great deal and read the xrandr man page, but no luck. There are no errors in /var/log/Xorg.0.log, and here is my /etc/X11/xorg.conf:

Section "ServerLayout"
	Identifier     "aticonfig Layout"
	Screen      0  "aticonfig-Screen[0]-0" 0 0
	Option	    "AutoAddDevices" "false"
EndSection

Section "Module"
EndSection

Section "Monitor"
	Identifier   "aticonfig-Monitor[0]-0"
	Option	    "VendorName" "ATI Proprietary Driver"
	Option	    "ModelName" "Generic Autodetecting Monitor"
	Option	    "DPMS" "true"
EndSection

Section "Device"
	Identifier  "aticonfig-Device[0]-0"
	Driver      "fglrx"
	Option	    "Centermode" "off"
	BusID       "PCI:2:0:0"
EndSection

Section "Screen"
	Identifier "aticonfig-Screen[0]-0"
	Device     "aticonfig-Device[0]-0"
	Monitor    "aticonfig-Monitor[0]-0"
	DefaultDepth     24
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

And here is the output of xrandr, if that helps:

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
DFP1 disconnected (normal left inverted right x axis y axis)
DFP2 disconnected (normal left inverted right x axis y axis)
DFP3 disconnected (normal left inverted right x axis y axis)
DFP4 disconnected (normal left inverted right x axis y axis)
DFP5 disconnected (normal left inverted right x axis y axis)
DFP6 disconnected (normal left inverted right x axis y axis)
DFP7 disconnected (normal left inverted right x axis y axis)
DFP8 disconnected (normal left inverted right x axis y axis)
DFP9 disconnected (normal left inverted right x axis y axis)
DFP10 disconnected (normal left inverted right x axis y axis)
DFP11 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00*+  50.00    59.94    60.00    50.00    59.94  
   1600x1200     60.00  
   1776x1000     50.00    59.94    50.00    59.94  
   1680x1050     50.00    59.95  
   1440x1080     50.00    59.94    59.99  
   1400x1050     60.00    50.00  
   1600x900      60.00    50.00  
   1360x1024     60.00    50.00  
   1280x1024     50.00    75.02    60.02  
   1440x900      50.00    74.98    59.89  
   1280x960      50.00    60.00  
   1280x800      50.00    59.81  
   1152x864      50.00    59.94    75.00  
   1280x768      50.00    59.81  
   1280x720      60.00    50.00    59.94  
   1024x768      50.00    75.03    70.07    60.00  
   1152x648      50.00    59.94  
   800x600       50.00    72.19    75.00    60.32    56.25  
   720x576       59.94    50.00  
   856x480       50.00    59.94    59.68  
   720x480       50.00    60.00    59.94  
   640x480       50.00    75.00    72.81    66.61    59.94  
CRT1 disconnected (normal left inverted right x axis y axis)

I found plenty of answers on how to remove underscanning sans GUI, but that isn't a problem for me, since I set that in amdcccle long before they crippled it. Nobody seems to have addressed this problem, though.

Edit: I have worked around this problem by running

# aticonfig --lcd center

(which disables all scaling and stretching) and rebooting (although simply logging out and logging in should probably work, also), then I followed https://wiki.archlinux.org/index.php/xr … esolutions to add a 1440x1080 mode. For DOSBox (my reason for making this post), I changed dosbox.conf so that

fullresolution=1440x1080

which gives me a correct 4:3 image with pillarboxes on my 1920x1080 monitor, with DOSBox scaling to fill that image (provided I choose an output system other than "surface"). This workaround might also help anyone playing older games with Wine or other emulators beside DOSBox that might not scale properly. However, if you need a resolution like 640x480 or 1024x768, you're out of luck unless your display has an aspect ratio setting of its own.

I confirmed that "Maintain aspect ratio" works fine in CCC on the Redmond operating system. Of course, the full blame here goes to AMD for their abysmal Linux support, which even went to the point of removing several CCC features; presumably because the features broke with newer cards and/or drivers, and they couldn't be bothered to maintain the code anymore. Makes my next graphics card purchase that much easier.

Last edited by kentclarkson (2015-01-27 21:48:45)

Offline

Board footer

Powered by FluxBB