| View previous topic :: View next topic |
| Author |
Message |
achallenger1 n00b

Joined: 23 Jun 2005 Posts: 7
|
Posted: Sat Jul 02, 2005 1:26 am Post subject: SOLVED: Starcraft, Wine - HOWTO full-screen? |
|
|
I've installed Wine in the hopes of getting Starcraft running on Linux. So far, it's up and running, and works fine as long as I add the appropriate commands in ~/.wine/config to run it in a 640x480 window. I'd really like to run Starcraft full-screen, though.
Back in Red Hat 9, when I did "wine StarCraft.exe", it would automagically load Starcraft, switch to 640x480x8 resolution, and work perfectly (never tried network games, but otherwise...). In Gentoo (2005.0, I think; a new download/install), Starcraft dies with a DirectX error when it tries to switch to 640x480.
I'm running Linux x86_64 (I followed Wine compile instructions from this forum somewhere because the official ebuild dies on x86_64; could that have broken something?). I'm using the NVidia proprietary drivers, if it matters.
I've seen some scripts on this forum for launching a new X instance at the right resolution; this isn't exactly what I want, but I've tried it anyway. It only works if I set up a 640x480x8 X server, and then the colors look horrendous.
Is there a way to get this to work cleanly?
Here are my Wine and X config files, if that helps: (is there any other relevant info?)
| Code: | $ cat ~/.wine/config | grep -vG "^;"
WINE REGISTRY Version 2
[wine]
# [wineconf]
[Version]
"Windows" = "winxp"
[DllOverrides]
"oleaut32" = "builtin, native"
"ole32" = "builtin, native"
"comdlg32" = "builtin, native"
"shell32" = "builtin, native"
"shfolder" = "builtin, native"
"shlwapi" = "builtin, native"
"shdocvw" = "builtin, native"
"advapi32" = "builtin, native"
"msvcrt" = "native, builtin"
"mciavi.drv" = "native, builtin"
"mcianim.drv" = "native, builtin"
"d3drm" = "native, builtin"
"d3dxof" = "native, builtin"
"dpnhpast" = "native, builtin"
"*" = "builtin, native"
[x11drv]
"AllocSystemColors" = "256"
"PrivateColorMap" = "Y"
"PerfectGraphics" = "N"
"Managed" = "Y"
"UseDGA" = "Y"
"UseXVidMode" = "Y"
"UseXRandR" = "Y"
"UseTakeFocus" = "Y"
"UsePrimarySelection" = "N"
"DXGrab" = "Y"
"DesktopDoubleBuffered" = "Y"
[fonts]
"Default" = "-adobe-helvetica-"
"DefaultFixed" = "fixed"
"DefaultSerif" = "-adobe-times-"
"DefaultSansSerif" = "-adobe-helvetica-"
[FontDirs]
[ppdev]
[spooler]
"FILE:" = "tmp.ps"
"LPT1:" = "|lpr"
"LPT2:" = "|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -"
"LPT3:" = "/dev/lp3"
[ports]
[Debug]
[afmdirs]
"1" = "/usr/share/ghostscript/fonts"
"2" = "/usr/share/a2ps/afm"
"3" = "/usr/share/enscript"
"4" = "/usr/X11R6/lib/X11/fonts/Type1"
[WinMM]
"Drivers" = "winealsa.drv" ; for ALSA users
"WaveMapper" = "msacm.drv"
"MidiMapper" = "midimap.drv"
[dsound]
[Network]
[AppDefaults\\_INS0432._MP\\x11drv]
"Desktop" = "640x480"
[AppDefaults\\_INS0466._MP\\x11drv]
"Desktop" = "640x480"
[AppDefaults\\_INS0576._MP\\x11drv]
"Desktop" = "640x480"
[AppDefaults\\_INS5176._MP\\x11drv]
"Desktop" = "640x480"
[AppDefaults\\_INS5576._MP\\x11drv]
"Desktop" = "800x600"
# [/wineconf]
|
| Code: | $ cat /etc/X11/xorg.conf | grep -vG "^#" | grep -vG "^ #"
Section "ServerLayout"
Identifier "X.org Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSection
Section "Files"
RgbPath "/usr/lib64/X11/rgb"
ModulePath "/usr/lib64/modules"
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/TTF/"
FontPath "/usr/share/fonts/Type1/"
FontPath "/usr/share/fonts/CID/"
FontPath "/usr/share/fonts/75dpi/"
FontPath "/usr/share/fonts/100dpi/"
EndSection
Section "Module"
Load "glx"
Load "record"
Load "extmod"
Load "dbe"
Load "xtrap"
Load "freetype"
Load "type1"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "ExplorerPS/2"
Option "Device" "/dev/input/mice"
Option "Buttons" "7"
Option "ZAxisMapping" "6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
EndSection
Section "Device"
Option "HWcursor" "true" # [<bool>]
Option "ConnectedMonitors" "CRT-0, CRT-1" # <str>
Option "RenderAccel" "true" # [<bool>]
Option "CursorShadow" "true" # [<bool>]
Option "TwinView"
Option "MetaModes" "CRT-0: 1024x768 +1280+256, CRT-1: 1280x1024 +0+0; CRT-1: 1280x1024; CRT-1: 1024x768; CRT-1: 800x600; CRT-1: 640x480"
Option "AllowGLXWithComposite" "true" # [<bool>]
Identifier "Card0"
Driver "nvidia"
VendorName "nVidia Corporation"
BoardName "Unknown Board"
Option "NoLogo" "true"
BusID "PCI:5:0:0"
Option "VideoRam" "131072"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 8
Modes "640x480"
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 16
EndSubSection
SubSection "Display"
Viewport 0 0
Depth 24
Modes "2304x1024" "1280x1024" "1024x768" "800x600" "640x480"
EndSubSection
EndSection
|
Last edited by achallenger1 on Wed Jul 06, 2005 6:33 pm; edited 1 time in total |
|
| Back to top |
|
 |
achallenger1 n00b

Joined: 23 Jun 2005 Posts: 7
|
Posted: Wed Jul 06, 2005 6:24 pm Post subject: |
|
|
I seem to have solved the problem. Here's what I did:
I first emerged all of the emul-linux-x86-* packages:
| Code: |
emerge emul-linux-x86-baselibs
emerge emul-linux-x86-compat
emerge emul-linux-x86-glibc
emerge emul-linux-x86-gtklibs
emerge emul-linux-x86-qtlibs
emerge emul-linux-x86-sdl
emerge emul-linux-x86-soundlibs
emerge emul-linux-x86-xlibs
|
(I skipped emul-linux-x86-nvidia because it was masked; I believe it's built in to the current Nvidia package)
I had emerged several of the above before, but apparently new versions were available (?); all packages re-downloaded.
After this, I removed symlinks "/usr/lib/libXext.a", "/usr/lib/libXext.so", and "/usr/lib/libX11.so", and re-created them, targeting them at the corresponding files in "/emul/linux/x86/usr/lib/". I'm sure this will break some package or other, but it hasn't caused any problems yet, so...
After that, wine worked as expected; Starcraft went full-screen nicely, and at a quick glance it appears to work well.
EDIT: Apparently, /usr/lib is a symlink to /usr/lib64, not /usr/lib32 like on other distros... In any case, X refused to start the next time I rebooted the system. I'm not sure if the above changes caused the problem; I've undone all of them (and re-emerged Xorg and the Nvidia drivers, which I use), and the problem's still there. The problem appears to be somewhere in the Nvidia drivers; the Nv X driver still works fine. So, don't try the above unless you're really sure it won't break X!! |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|