Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

After upgrading from Ubuntu 10.10 to 12.04 the system had two problems:

  • awkward screen resolution (800*600 max. on not recognised full HD monitor)
  • no directX support in Wine, Wine is no longer able to initialize OpenGL

Hardware: ATI Radeon 9200SE 5964 (AGP) RGB out connected LG 32LD465 full HD TV-monitor.

I managed to solve the screen resolution issue, but run out of ideas with wine.

Changes to the system:

/etc/X11/xorg.conf 
/usr/share/X11/xorg.conf.d/99-vesahack
/etc/gdm/Init/Default

Also attached:

  • LG 32LD465 television EDID reading
  • ** it was too long to post here: Xorg.0.log
  • Heroes of Might & Magic 3 run trial

Remarks: EDID reading is incorrect. TV is capable to run at 1920x1080 60 Hz.

Ubuntu 10.10 worked out of the box, the only change was load "fglrx" option in module section of xorg.conf (just for sure), and default color depth set to 16 bit - necessary to run highcolor games in windowed mode.

I have set up modelines using cvt & xrandr and added xrandr lines to /etc/gdm/Init/Default. It worked fine with Ubuntu 11.04, but didn't with 11.10 & 12.04. So I continued with 99-vesahack and a shiny new xorg.conf. Now resolution is ok, but Wine keeps crashing, several versions from 1.3.x to 1.5.4. Tested with several executables and desktop environments.

Also tried out:

sudo apt-get remove --purge fgrlx*
sudo apt-get install fglrx-amdcccle-updates fglrx-updates

UPDATE: I did this:

sudo apt-get remove --purge fglrx*
sudo apt-get purge xserver-xorg
sudo apt-get install xserver-xorg xserver-xorg-video-all ubuntu-desktop xorg
sudo apt-get install libgl1-mesa-swrast

Now WINE isn't crashing, but unusable- way too slow. Speed around 1 FPS with a game from 1996.

UPDATE2: *After replacing libgl1-mesa-swx11 with libgl1-mesa-glx, now it runs!* (practically i have reinstalled & removed again fglrx, and with fglrx came libgl1-mesa-glx)

# apt-get install libgl1-mesa-glx

xorg.conf

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "LG :)"
    ModelName      "LG 32LD465"
    HorizSync       29.6 - 66.6
    VertRefresh     59.0 - 70.1
    Option         "DPMS"

    Modeline    "1360x768_75.00"  109.00  1360 1448 1584 1808  768 771 781 805 -hsync +vsync
    Modeline    "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync
    Modeline    "1280x1024_60.00"  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync
    Modeline    "1280x768_60.00"   79.50  1280 1344 1472 1664  768 771 781 798 -hsync +vsync
    Modeline    "1024x768_60.00"   63.50  1024 1072 1176 1328  768 771 775 798 -hsync +vsync
    Modeline    "800x600_60.00"   38.25  800 832 912 1024  600 603 607 624 -hsync +vsync
    Modeline    "640x480_60.00"   23.75  640 664 720 800  480 483 487 500 -hsync +vsync  
    Option      "PreferredMode" "1360x768_60.00"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "radeon"
    VendorName     "AMD/ATI Corporation"

    Option         "VGA-0"  "Monitor0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    16

    SubSection "Display"
        Viewport   0 0
        Depth     16
    Modes "1360x768_60.00" "1280x1024_60.00" "1280x768_60.00" "1024x768_60.00" "800x600_60.00" "640x480_60.00"
    EndSubSection

    SubSection "Display"
        Viewport   0 0
        Depth     24
    Modes "1360x768_60.00" "1280x1024_60.00" "1280x768_60.00" "1024x768_60.00" "800x600_60.00" "640x480_60.00"
    EndSubSection

EndSection

Section "Module"
    Load    "radeon"
    Load    "glx"
EndSection

vesahack

Section "Device"
    Identifier "Screen0"
    VideoRam 128000
EndSection

init/default

#!/bin/sh
# Stolen from the debian kdm setup, aren't I sneaky
# Plus a lot of fun stuff added
#  -George

PATH="/usr/bin:$PATH"
OLD_IFS=$IFS

xrandr --newmode "1360x768_75.00"  109.00  1360 1448 1584 1808  768 771 781 805 -hsync +vsync
xrandr --addmode VGA-0 "1360x768_75.00"
/sbin/initctl -q emit login-session-start DISPLAY_MANAGER=gdm

gdmwhich () {
  COMMAND="$1"
  OUTPUT=
  IFS=:
  for dir in $PATH
  do
    if test -x "$dir/$COMMAND" ; then
      if test "x$OUTPUT" = "x" ; then
        OUTPUT="$dir/$COMMAND"
      fi
    fi
  done
  IFS=$OLD_IFS
  echo "$OUTPUT"
}

sysresources=/etc/X11/Xresources

# merge in defaults
if [ -f "$sysresources" ]; then
    xrdb -merge "$sysresources"
fi

sysmodmap=/etc/X11/Xmodmap

XMODMAP=`gdmwhich xmodmap`
if [ "x$XMODMAP" != "x" ] ; then
  if [ "x$GDM_PARENT_DISPLAY" = "x" ]; then
    if [ -f $sysmodmap ]; then
      $XMODMAP $sysmodmap
    fi
  else
    ( DISPLAY=$GDM_PARENT_DISPLAY XAUTHORITY=$GDM_PARENT_XAUTHORITY $XMODMAP -pke ) | $XMODMAP -
  fi

  #
  # Switch Sun's Alt and Meta mod mappings
  #

  UNAME=`gdmwhich uname`
  PROCESSOR=`$UNAME -p`
  if [ "x$PROCESSOR" = "xsparc" ]; then
    if $XMODMAP | grep mod4 | grep Alt > /dev/null 2>/dev/null
    then
      $XMODMAP -e "clear Mod1" \
               -e "clear Mod4" \
               -e "add Mod1 = Alt_L" \
               -e "add Mod1 = Alt_R" \
               -e "add Mod4 = Meta_L" \
               -e "add Mod4 = Meta_R"
    fi
  fi
fi

SETXKBMAP=`gdmwhich setxkbmap`
if [ "x$SETXKBMAP" != "x" ] ; then
  # FIXME: is this all right?  Is this completely on crack?
  # What this does is move the xkb configuration from the GDM_PARENT_DISPLAY
  # FIXME: This should be done in code.  Or there must be an easier way ...
  if [ -n "$GDM_PARENT_DISPLAY" ]; then
    XKBSETUP=`( DISPLAY=$GDM_PARENT_DISPLAY XAUTHORITY=$GDM_PARENT_XAUTHORITY $SETXKBMAP -v )`
    if [ -n "$XKBSETUP" ]; then
      XKBKEYMAP=`echo "$XKBSETUP" | grep '^keymap' | awk '{ print $2 }'`
      XKBTYPES=`echo "$XKBSETUP" | grep '^types' | awk '{ print $2 }'`
      XKBCOMPAT=`echo "$XKBSETUP" | grep '^compat' | awk '{ print $2 }'`
      XKBSYMBOLS=`echo "$XKBSETUP" | grep '^symbols' | awk '{ print $2 }'`
      XKBGEOMETRY=`echo "$XKBSETUP" | grep '^geometry' | awk '{ print $2 }'`
      if [ -n "$XKBKEYMAP" ]; then
        $SETXKBMAP -keymap "$XKBKEYMAP"
      elif [ -n "$XKBTYPES" -a -n "$XKBCOMPAT" -a -n "$XKBSYMBOLS" -a -n "$XKBGEOMETRY" ]; then
        $SETXKBMAP -types "$XKBTYPES" -compat "$XKBCOMPAT" -symbols "$XKBSYMBOLS" -geometry "$XKBGEOMETRY"
      elif [ -n "$XKBTYPES" -a -n "$XKBCOMPAT" -a -n "$XKBSYMBOLS" ]; then
        $SETXKBMAP -types "$XKBTYPES" -compat "$XKBCOMPAT" -symbols "$XKBSYMBOLS"
      elif [ -n "$XKBSYMBOLS" ]; then
        $SETXKBMAP -symbols "$XKBSYMBOLS"
      fi
    fi
  fi
fi

exit 0

sudo get-edid | parse-edid

parse-edid: parse-edid version 2.0.0
[sudo] password for enzo: 
get-edid: get-edid version 2.0.0

    Performing real mode VBE call
    Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
    Function supported
    Call successful

    VBE version 200
    VBE string at 0x2110 "ATI RADEON 9200"

VBE/DDC service about to be called
    Report DDC capabilities

    Performing real mode VBE call
    Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
    Function supported
    Call successful

    Monitor and video card combination does not support DDC1 transfers
    Monitor and video card combination does not support DDC2 transfers
    0 seconds per 128 byte EDID block transfer
    Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
    Read EDID

    Performing real mode VBE call
    Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
    Function supported
    Call failed

The EDID data should not be trusted as the VBE call failed
EDID claims 19 more blocks left
EDID blocks left is wrong.
Your EDID is probably invalid.
parse-edid: EDID checksum failed - data is corrupt. Continuing anyway.
parse-edid: first bytes don't match EDID version 1 header
parse-edid: do not trust output (if any).

    # EDID version 19 revision 19
Section "Monitor"
    Identifier "DXS:1313"
    VendorName "DXS"
    ModelName "DXS:1313"
    # DPMS capabilities: Active off:no  Suspend:no  Standby:no

    Mode    "275x275"   # vfreq 43.295Hz, hfreq 45.979kHz
        DotClock    48.830000
        HTimings    275 294 313 1062
        VTimings    275 276 327 1062
    EndMode
    Mode    "275x275"   # vfreq 43.295Hz, hfreq 45.979kHz
        DotClock    48.830000
        HTimings    275 294 313 1062
        VTimings    275 276 327 1062
    EndMode
    Mode    "275x275"   # vfreq 43.295Hz, hfreq 45.979kHz
        DotClock    48.830000
        HTimings    275 294 313 1062
        VTimings    275 276 327 1062
    EndMode
    Mode    "275x275"   # vfreq 43.295Hz, hfreq 45.979kHz
        DotClock    48.830000
        HTimings    275 294 313 1062
        VTimings    275 276 327 1062
    EndMode
EndSection

env WINEPREFIX="/home/enzo/.wine" wine C:\windows\command\start.exe /Unix /home/enzo/.wine/dosdevices/c:/windows/profiles/All\ Users/Start\ Menu/Programs/3DO/Heroes\ 3\ Complete/Heroes\ of\ Might\ and\ Magic\ III\ Complete.lnk

fixme:ntoskrnl:KeInitializeSpinLock stub: 0x547d74
fixme:advapi:RegisterTraceGuidsW (0x100778a, 0x100a060, {485e7de8-0a80-11d8-ad15-505054503030}, 1, 0x33fde0, (null), (null), 0x100a068,): stub
fixme:advapi:RegisterTraceGuidsW (0x100778a, 0x100a080, {485e7de9-0a80-11d8-ad15-505054503030}, 1, 0x33fde0, (null), (null), 0x100a088,): stub
fixme:advapi:RegisterTraceGuidsW (0x100778a, 0x100a0a0, {485e7dea-0a80-11d8-ad15-505054503030}, 1, 0x33fde0, (null), (null), 0x100a0a8,): stub
fixme:advapi:RegisterTraceGuidsW (0x100778a, 0x100a0c0, {485e7deb-0a80-11d8-ad15-505054503030}, 1, 0x33fde0, (null), (null), 0x100a0c8,): stub
fixme:advapi:RegisterTraceGuidsW (0x100778a, 0x100a0e0, {485e7dec-0a80-11d8-ad15-505054503030}, 1, 0x33fde0, (null), (null), 0x100a0e8,): stub
fixme:advapi:RegisterTraceGuidsW (0x100778a, 0x100a100, {485e7ded-0a80-11d8-ad15-505054503030}, 1, 0x33fde0, (null), (null), 0x100a108,): stub
fixme:win:RegisterDeviceNotificationW (hwnd=0x12f918, filter=0x54e8ec,flags=0x00000001) returns a fake device notification handle!
fixme:exec:SHELL_execute flags ignored: 0x00000100
fixme:exec:SHELL_execute flags ignored: 0x00004100
err:exec:SHELL_ExecuteW cannot return to directory L"unix\\home\\enzo"
enzo@picipaci:~$ fixme:mcicda:MCICDA_GetError Unknown mode 1
fixme:mountmgr:harddisk_ioctl Unsupported ioctl 24008 (device=2 access=1 func=2 method=0)
fixme:mcicda:MCICDA_GetError Unknown mode 1
fixme:mountmgr:harddisk_ioctl Unsupported ioctl 24008 (device=2 access=1 func=2 method=0)
Xlib:  extension "GLX" missing on display ":0.0".
err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn't initialize OpenGL, expect problems
err:d3d_caps:WineD3D_CreateFakeGLContext Can't find a suitable iPixelFormat.
err:d3d:InitAdapters Failed to get a gl context for default adapter
err:ddraw:ddraw_create_swapchain Failed to create swapchain, hr 0x8876086c.
err:ddraw:ddraw7_SetCooperativeLevel Failed to create swapchain, hr 0x8876086c.
wine: Unhandled page fault on read access to 0x0000001c at address 0x7cdaf27b (thread 0035), starting debugger...
Can't attach process 0034: error 5
err:ddraw:ddraw_create_swapchain Failed to create swapchain, hr 0x8876086c.
err:ddraw:ddraw7_SetCooperativeLevel Failed to create swapchain, hr 0x8876086c.

xdpyinfo

name of display:    :0.0
version number:    11.0
vendor string:    The X.Org Foundation
vendor release number:    11103000
X.Org version: 1.11.3
maximum request size:  16777212 bytes
motion buffer size:  256
bitmap unit, bit order, padding:    32, LSBFirst, 32
image byte order:    LSBFirst
number of supported pixmap formats:    7
supported pixmap formats:
    depth 1, bits_per_pixel 1, scanline_pad 32
    depth 4, bits_per_pixel 8, scanline_pad 32
    depth 8, bits_per_pixel 8, scanline_pad 32
    depth 15, bits_per_pixel 16, scanline_pad 32
    depth 16, bits_per_pixel 16, scanline_pad 32
    depth 24, bits_per_pixel 32, scanline_pad 32
    depth 32, bits_per_pixel 32, scanline_pad 32
keycode range:    minimum 8, maximum 255
focus:  window 0x3c00005, revert to Parent
number of extensions:    26
    BIG-REQUESTS
    Composite
    DAMAGE
    DOUBLE-BUFFER
    DPMS
    DRI2
    Generic Event Extension
    MIT-SCREEN-SAVER
    MIT-SHM
    RANDR
    RECORD
    RENDER
    SECURITY
    SHAPE
    SYNC
    X-Resource
    XC-MISC
    XFIXES
    XFree86-DGA
    XFree86-VidModeExtension
    XINERAMA
    XInputExtension
    XKEYBOARD
    XTEST
    XVideo
    XVideo-MotionCompensation
default screen number:    0
number of screens:    1

screen #0:
  dimensions:    1360x768 pixels (359x203 millimeters)
  resolution:    96x96 dots per inch
  depths (7):    16, 1, 4, 8, 15, 24, 32
  root window id:    0x62
  depth of root window:    16 planes
  number of colormaps:    minimum 1, maximum 1
  default colormap:    0x20
  default number of colormap cells:    64
  preallocated pixels:    black 0, white 65535
  options:    backing-store NO, save-unders NO
  largest cursor:    64x64
  current input event mask:    0xfac033
    KeyPressMask             KeyReleaseMask           EnterWindowMask          
    LeaveWindowMask          KeymapStateMask          ExposureMask             
    StructureNotifyMask      SubstructureNotifyMask   SubstructureRedirectMask 
    FocusChangeMask          PropertyChangeMask       ColormapChangeMask       
  number of visuals:    3
  default visual id:  0x21
  visual:
    visual id:    0x21
    class:    TrueColor
    depth:    16 planes
    available colormap entries:    64 per subfield
    red, green, blue masks:    0xf800, 0x7e0, 0x1f
    significant bits in color specification:    6 bits
  visual:
    visual id:    0x22
    class:    DirectColor
    depth:    16 planes
    available colormap entries:    64 per subfield
    red, green, blue masks:    0xf800, 0x7e0, 0x1f
    significant bits in color specification:    6 bits
  visual:
    visual id:    0x60
    class:    TrueColor
    depth:    32 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
share|improve this question

closed as too localized by fossfreedom Mar 9 '13 at 23:30

This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help making this question more broadly applicable, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer 1

I would say that the driver is not being loaded correctly since the 9200SE is not supported by the drivers present in 12.04.

From the AMD graphics wiki you can see that you should in fact be using the open-source driver for your card and that probably it wont work otherwise

enter image description here

I understand that it was working with the 10.10, that is because the driver version were probably different, new drivers lost support for many AGP cards. You need a graphics upgrade if you want to use the new driver or you are stuck with the open source drivers (not fglrx).

The open source driver will work nicely with most old cards (maybe you still need to force the resolution issue) but the 3D support is a bit shady. I don't think there is much you can do since you cant install the old driver in 12.04, you would have to actually go back to 10.10 to make it work.

share|improve this answer
    
I would like to fix the problem without hardware change. "system -> settings -> closed source drivers" says, that no closed source drivers are in use/avalaible. What I should modify in config files to get it work? –  Eperbab May 19 '12 at 9:22
    
Solved- had to remove fglrx driver, create the xorg.conf above, and keep libgl1-mesa-glx. The vesa-hack file and changes to /etc/gdm/Init/Default are not necessary anymore. –  Eperbab May 19 '12 at 15:16

Not the answer you're looking for? Browse other questions tagged or ask your own question.