I'm running ScummVM on Gentoo Linux with an Nvidia graphics card that has Twinview enabled. The other display, on which the image of my primary display is cloned, is a TV. The primary display mode is set so that the primary display shows 1024*768 and the secondary (the TV) shows 800*600. There is another mode that uses 800*600 for both.
When I try to run ScummVM in full screen in the latter mode, it dies with the following error message:
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 134 (XFree86-VidModeExtension)
Minor opcode of failed request: 10 (XF86VidModeSwitchToMode)
Value in failed request: 0x131
Serial number of failed request: 111
Current serial number in output stream: 113
Also, it would seem to be unable to scale the content properly with renderers other than 2x and 3x if TwinView is enabled.
Information that I find relevant:
- ScummVM 0.8.0 (Jan 15 2006 15:00:30)
Features compiled in: Vorbis FLAC MP3 ALSA zLib MPEG2
- The nvidia-kernel version is 1.0.8178-r2, I believe
I could, of course, run the progarm without TwinView, but it would require me to restart my X server whenever I need either to use the TV-out or to play games with ScummVM. Obviously, I would appreciate an easier solution.
Thanks beforehand.
Problems with Nvidia Twinview (Linux)
Moderator: ScummVM Team
-
- Posts: 5
- Joined: Sat Jan 21, 2006 2:40 pm
- Location: Finland
I had 2 fullscreen problems with Nvidia Twinview.
First problem:
One half of scummvm was on one screen, the other on the other screen.
Second problem:
scummvm was not really fullscreen, but small size in the middle of the desktop, surrounded by black space.
The size of scummvm is depending on scummvm graphics setting "Graphics mode". "Normal (no scaling)" is small size, "HQ2x" is bigger size.
Solution:
I had to edit Option "metamodes" in Section "Screen" in file /etc/X11/xorg.conf.
Line before:
Line after:
"CRT: 1360x768_60" is my TV with refresh rate 60.
"DFP: 1280x1024_75" is my computer monitor with refresh rate 75.
Right refresh rate is important for movies best quality.
In normal mode both screens are activated and part of 1 desktop.
This is the new mode for scummvm, but not only for scummvm. It's far all SDL, wine and linux gaming stuff:
CRT: NULL, DFP: 640x480_75 +0+0
CRT is deactivated, DFP is switched to 640x480.
You might add additional higher resolutions for other games if you need.
If everything is correct, the command "xrandr --query" shows that new mode is available (see last line):
Here is my file /etc/X11/xorg.conf:
But there are more configuration files in /etc/X11/xorg.conf.d/.
There are some websites on this topic.
This 3 helped me:
http://http.download.nvidia.com/XFree86 ... dix-g.html
http://blog.ssokolow.com/archives/2007/ ... -twinview/
http://www.nvnews.net/vbulletin/archive ... 919.html[b][/b]
First problem:
One half of scummvm was on one screen, the other on the other screen.
Second problem:
scummvm was not really fullscreen, but small size in the middle of the desktop, surrounded by black space.
The size of scummvm is depending on scummvm graphics setting "Graphics mode". "Normal (no scaling)" is small size, "HQ2x" is bigger size.
Solution:
I had to edit Option "metamodes" in Section "Screen" in file /etc/X11/xorg.conf.
Line before:
Code: Select all
Option "metamodes" "CRT: 1360x768_60 +0+0, DFP: 1280x1024_75 +1360+0"
Code: Select all
Option "metamodes" "CRT: 1360x768_60 +0+0, DFP: 1280x1024_75 +1360+0; CRT: NULL, DFP: 640x480_75 +0+0"
"DFP: 1280x1024_75" is my computer monitor with refresh rate 75.
Right refresh rate is important for movies best quality.
In normal mode both screens are activated and part of 1 desktop.
This is the new mode for scummvm, but not only for scummvm. It's far all SDL, wine and linux gaming stuff:
CRT: NULL, DFP: 640x480_75 +0+0
CRT is deactivated, DFP is switched to 640x480.
You might add additional higher resolutions for other games if you need.
If everything is correct, the command "xrandr --query" shows that new mode is available (see last line):
Code: Select all
xrandr --query
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 2640 x 1024, maximum 2640 x 1024
default connected 2640x1024+0+0 0mm x 0mm
2640x1024 50.0*
640x480 51.0
Here is my file /etc/X11/xorg.conf:
Code: Select all
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 295.40 (buildmeister@swio-display-x86-rhel47-04.nvidia.com) Thu Apr 5 22:32:49 PDT 2012
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "SAMSUNG"
HorizSync 30.0 - 61.0
VertRefresh 60.0 - 75.0
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 6600 GT"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "1"
Option "TwinViewXineramaInfoOrder" "DFP-0"
Option "metamodes" "CRT: 1360x768_60 +0+0, DFP: 1280x1024_75 +1360+0; CRT: NULL, DFP: 640x480_75 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
There are some websites on this topic.
This 3 helped me:
http://http.download.nvidia.com/XFree86 ... dix-g.html
http://blog.ssokolow.com/archives/2007/ ... -twinview/
http://www.nvnews.net/vbulletin/archive ... 919.html[b][/b]
Last edited by id1402 on Mon Apr 30, 2012 10:03 am, edited 9 times in total.
I think metamode resolution 640x480 is best for most scummvm games.
I tested Flight of the Amazon Queen, Full Throttle and Feeble files.
Feeble Files, setting "no scaling" and setting "HQ2x", both settings fill the full of the screen.
But I recommend "no scaling", becuase "HQ2x" uses much more CPU power and is slower.
But the other games (setting "HQ2X") have black borders on the top and on the bottom. I think that's right.
I saw this posting by eriktorbjorn:
http://forums.scummvm.org/viewtopic.php?p=4024#4024
Flight of the Amazon Queen has black borders on the top and on the bottom.
It seems to be originally 320x200. It is scaled correctly (aspect ratio) to 640x400 and not to 640x480. So there is empty space of 80. 40 on the top and 40 on the bottom.
Is that right?
I tested metamode resolution 1280x1024. It causes the games having black borders on all sites of the screen.
I tested Flight of the Amazon Queen, Full Throttle and Feeble files.
Feeble Files, setting "no scaling" and setting "HQ2x", both settings fill the full of the screen.
But I recommend "no scaling", becuase "HQ2x" uses much more CPU power and is slower.
But the other games (setting "HQ2X") have black borders on the top and on the bottom. I think that's right.
I saw this posting by eriktorbjorn:
http://forums.scummvm.org/viewtopic.php?p=4024#4024
Feeble Files seems to be originally 640x480 and fills the full screen in full screen mode.A 320x200 game can be displayed as 320x200, 320x240, 640x400, 640x480, 960x600 or 960x720.
A 320x240 game can be displayed as 320x240, 640x480 or 960x720.
A 640x480 game can be displayed as 640x480, 1280x960 or 1920x1440.
Flight of the Amazon Queen has black borders on the top and on the bottom.
It seems to be originally 320x200. It is scaled correctly (aspect ratio) to 640x400 and not to 640x480. So there is empty space of 80. 40 on the top and 40 on the bottom.
Is that right?
I tested metamode resolution 1280x1024. It causes the games having black borders on all sites of the screen.