WineHQ
Wine Forums

Board index » WineHQ » Wine Help » Linux




 Page 1 of 1 [ 14 posts ] 



 
Author Message
 Post Posted: Mon Apr 15, 2019 4:32 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
Hello again, fellow WINE fans!

A while back I posted something here about using WINE with the Windows game "Foxtail" on an old Sony VAIO using Puppy Linux 5.2.5. It didn't work, nor did it in XP mode (the Sony is a "Dual Operating System" device).

I got the game working in XP mode. What is needed in part is an "XML" file to point it at DirectX. That way SwiftShader can get it running.

The problem seems to be whether or not I use that XML file with WINE I get the same exact error message in the command window about a GLX11 (or some such thing) error, "expect problems"- it is clearly related to OpenGL. It seems as if the game is NOT trying to use DirectX.

Is this because of the XML file? Can anyone here advise how to force a game to use DirectX with WINE?

Thank you.


(Note: an earlier post does have more detailed information, but my time is almost up here.)


Top 
 Post Posted: Wed Apr 17, 2019 2:02 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
Oops, sorry...here's the error message:

Code:
# err:module:load_builtin_dll failed to load .so lib for builtin L”winemp3.acm”: libmpg123.so.0: cannot open shared object file: No such file or directory
fixme:win:EnumDisplayDevicesW (L”\\\\.\\DISPLAY1“,0,0x33f430,0x00000000), stub!
Xlib:  extension “GLX” missing on display “:0.0“.
err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn’t initialize OpenGL, expect problems



It doesn't matter if that "settings.xml" file is there or not- the same identical message appears. That particular file points the game to "Direct3D," which is how it works in XP mode.

Note: that part about "libmpg123.so.0" does not matter. If the PET file is installed that part vanishes, but the rest remains. On the ASUS with Puppy Linux 6.0.5 Tahrpup it appears as well but the game works just fine. Also note that the ASUS is using the same identical version of WINE.


Top 
 Post Posted: Sun Apr 21, 2019 3:55 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2564
Location: Cambridge
@GusCE6

Can you post a Wine terminal log with:
Code:
export WINEDEBUG=+wgl
wine ...


Wine is trying to setup DirectX translation support.

This simply means you don't have native Linux OpenGL acceleration setup correctly (to actually translate the DirectX calls to OpenGL):
Code:
Xlib:  extension “GLX” missing on display “:0.0“.
err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn’t initialize OpenGL, expect problems


So please can you also post the output from:
Code:
glxinfo | egrep '^[[:alpha:]]'


Ta
Bob


Top 
 Post Posted: Sun Apr 21, 2019 4:22 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
I'll certainly try!

What I don't understand is this: why does it work on the ASUS? Same OS (Puppy Linux 5.7.0, only good for testing on the Sony), same version of WINE...if this has nothing to do with the Windows part then why does it work on one but not the other unless it is a hardware issue?

That "settings.xml" file is meant to direct the game AWAY from OpenGL and towards "direct3d." This is why, as long as Swiftshader 2.1 files are in the game folder as well, the game does work in Windows XP mode.

It looks like this:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<Settings>
   <Rendering>
      <RenderingHint>direct3d</RenderingHint>
   </Rendering>
</Settings>



I'm guessing that once OpenGL is out of the picture I'll get the usual error message about DirectX- just as with "Deepica"- but once Swiftshader is in place and the WINE settings are arranged for it the game should work (barring any other problems).


Top 
 Post Posted: Mon Apr 22, 2019 12:18 am 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2564
Location: Cambridge
GusCE6 wrote:
I'll certainly try!

What I don't understand is this: why does it work on the ASUS? Same OS (Puppy Linux 5.7.0, only good for testing on the Sony), same version of WINE...if this has nothing to do with the Windows part then why does it work on one but not the other unless it is a hardware issue?

...


It probably will be a hardware (graphics card) issue.
But since you haven't supplied any of the hardware specifications for either system...
I can't comment further, without you supplying the info I requested.

Bob


Top 
 Post Posted: Wed Apr 24, 2019 12:46 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
Well, that last reply was just after I saw your post- but it was with the mighty ASUS, which doesn't have this problem...however, I've now had a chance to try your codes on the Sony. Here are the results (this uses the desktop command window):

Code:
export WINEDEBUG=+wgl
wine ...


Results in:

Code:
wine: cannot find L "Z:\\root\\."



Code:
glxinfo | egrep '^[[:alpha:]]'


Results in:

Code:
bash: glxinfo: command not found



Not good...but here is what I can tell you:

The Sony is a 2001 VAIO laptop.
Pentium(R) 3 Intel integrated chip (Mobile)
800MHz processor
256MB RAM
Operating System: Puppy Linux 5.2.5 Lucid
Kernel: Linux 2.6.33.2 (i686)
Resolution: 1024h x 768v
OPENGL RENDERER: UNKNOWN
X11 Vendor: The X.Org Foundation



If I read this right there is nothing for OpenGL here.

The game in question- Gingertips "Foxtail"- now runs in Windows XP mode. This is due to the Freeimage.dll 3.17 file being replaced by the 3.15 version then the later 3.18 version; adding that "settings.xml" file which makes the game use DirectX (Direct3D) instead of OpenGL; and adding the three Swiftshader 2.1 files- Swiftshader is GREAT for older devices.

If what you say about not having "native Linux OpenGL" acceleration set up is the problem, the question is what can I do about it? Installing "Xorg.High" PET file didn't accomplish anything, in fact it made a mess of other things.

And why isn't this a problem with the ASUS other than the fact that it's...well, the ASUS.

Typing "OpenGL" in the file finder results in several "opengl32" results, including DLL, DLL.SO, and DEF, usually in the WINE folders.

It seems as if something isn't playing nice with something else here.

Another game- "Kiki the Nanobot-" and a few others have this sort of problem too. In the case of "Foxtail" if fixing this "opengl" problem gets the game running then fine, but why isn't the game shifting to DirectX instead of using OpenGL- since that is what that "settings.xml" file is there for?

I've also noticed other games- like "Woodville Chronicles"- are not affected by any XML file trying to direct them to "direct3D." If this problem can be solved quite a bit more can be done here. Hopefully you've spotted the problem and can tell me how to solve it.


Top 
 Post Posted: Wed Apr 24, 2019 1:50 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2564
Location: Cambridge
GusCE6 wrote:
Code:
export WINEDEBUG=+wgl
wine ...


Sorry I wasn't being clear enough there.
More acurately that should be:
Code:
export WINEDEBUG=+wgl
cd <PATH TO FOXTAIL EXECUTABLE>                                 # <---> fill the path in!!
wine <FOXTAIL EXECUTABLE> &>~/wine_foxtail_wgl_log.txt  # <---> fill the file name in!!

This will create the log file: "wine_foxtail_wgl_log.txt" , in your Linux user's home directory (probably /root - if it's Puppy)...

GusCE6 wrote:
Code:
glxinfo | egrep '^[[:alpha:]]'


Results in:

Code:
bash: glxinfo: command not found



That's a bummer. But I need the output, from the command, for both machines.

Please ask on the Puppy Linux forums what package the glxinfo command is in.
It's typically in mesa-utils or mesa-progs
But that's on a "normal" Linux distribution...

Ta
Bob


Top 
 Post Posted: Wed Apr 24, 2019 3:45 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
Here it is:


Code:
0009:fixme:win:EnumDisplayDevicesW (L"\\\\.\\DISPLAY1",0,0x32f3f0,0x00000000), stub!
0009:trace:wgl:wglChoosePixelFormat 0x6003a 0x32f830: size 40 version 1 flags 37 type 0 color 8 3,3,2,0 accum 0 depth 0 stencil 0 aux 0
Xlib:  extension "GLX" missing on display ":0.0".
0009:err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn't initialize OpenGL, expect problems
0009:fixme:win:RegisterTouchWindow (0x10052 00000003): stub
0009:trace:wgl:wglChoosePixelFormat 0x1d0042 0x32f5e0: size 40 version 1 flags 37 type 0 color 8 3,3,2,0 accum 0 depth 0 stencil 0 aux 0
0009:trace:wgl:wglChoosePixelFormat 0x1d0042 0x32f5e0: size 40 version 1 flags 37 type 0 color 8 3,3,2,0 accum 0 depth 0 stencil 0 aux 0
0009:err:ntdll:RtlLeaveCriticalSection section 0x350430 is not acquired



I'll try to get more, but that "UNKNOWN" part seems to indicate something is missing.


Top 
 Post Posted: Wed Apr 24, 2019 4:15 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2564
Location: Cambridge
@GusCE6

The log indicates you don't have Linux OpenGL support.
Realistically I think the integrated graphics, on a Intel Pentium 3 CPU, is going to do diddly squat under Wine.
Intel's desire to support Linux, with top quality Open Source drivers, post-dates 1999 by many years!
Intel's Windows graphics driver support is a totally different matter / department at the company.

I'm surprised the laptop still works at all (especially since it's Sony-branded!) 8)

Bob


Top 
 Post Posted: Wed Apr 24, 2019 5:36 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
The question remains, though- why is a game like "Foxtail" directed away from OpenGL (the game uses that by default) to Direct3D in Windows XP mode by that "settings.xml" file but not in Puppy Linux mode? As far as I can see another game that does that- "Woodville Chronicles"- has the same problem.

OpenGL games do work in XP mode.

If OpenGL is not a matter of hardware as is, say, SSE2 instructions (Pentium 3 lacks this) then surely it is software (driver?) based- and so there should be something for Puppy Linux 5.2.5 Lucid to install. If it's not too much I could even put the files/libraries in manually, as I did with tahrpup on the ASUS to get "Alien Blaster" working.

That Sony was "Made In Japan." It is an excellent product, and my last reply was posted with it, entirely in Puppy Linux mode. Heck, before that I was watching a Youtube "Foxtail" and "Space: 1999" video in 360p on it. Not bad for something built before Youtube existed. Browsing is safe and pretty efficient.

With "Foxtail," "Plants Vs. Zombies," and others it has a superb game collection, "Undertale" being the only real weak point in the collection. Pesky GameMaker Studio!

There must be a way of installing OpenGL on it, or at least forcing the game to use Direct3D.

Thanks!


Top 
 Post Posted: Thu Apr 25, 2019 4:33 am 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2564
Location: Cambridge
@GusCE6

To be clear there multiple graphics render paths in Wine:
Code:
Windows                      Linux

DirectX 7.0-11.0   ->   OpenGL 3.x / 4.x
OpenGL                 ->   OpenGL
DirectX 12.0          ->   Vulkan


So ultimately you'll require working Linux OpenGL support, to run Foxtail under Wine!
Which as I stated previously - is highly doubtful on such ancient hardware...

I forgot that Sony used to be a great company, good point!

Their current laptop hardware sucks, really bad...
A friend got a Sony laptop, 2 or 3 years ago, and it head a dead pixel (or two), an awful trackpad, really bad build quality.
Oh my lord! :shock:

Bob


Top 
 Post Posted: Fri Apr 26, 2019 12:26 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
It's always good to actually have someone who knows about these things to talk to!

Code:
Windows                      Linux

DirectX 7.0-11.0   ->   OpenGL 3.x / 4.x
OpenGL                 ->   OpenGL
DirectX 12.0          ->   Vulkan



If I understand this what you mean is that for a DirectX game to work in Linux OpenGL 3.x must be there.

"Foxtail" can run in one of two ways: OpenGL is default probably because it's cross-platform, but it can also run in Direct3D mode as well. That is what the "settings.xml" file does.

On the Sony in Windows XP mode when you just try the game itself- nothing added- the window does appear, but you quickly get that "error so sorry for the inconvenience (yeah right)" window. "Foxtail" never appears in the corner, only WME. Absolutely nothing appears onscreen, it is "whitescreen." BUT- at least the window DOES appear! It does get that far.

Using WINE in the Sony's Puppy Linux mode never even gets that far. Check me on this one: my guess is that the game must at least be able to get as far as in Windows XP mode in order to "switch over" to Direct3D mode. Since absolutely nothing happens it just isn't even "turning over," let alone starting.

In the case of several other games you get a "DirectX" error message. By going to the WINE configurations and directing it to the Swiftshader 2.1 files ("d3d8.dll" and "d3d9.dll") for that game the game will work. This is what I am trying to do here.

But clearly the game is not getting a chance to do this. In theory OpenGL should not even be involved at all, since that "settings.xml" file is directing the game AWAY from OpenGL. But evidently, unlike in XP mode, here the game isn't getting a chance to do so.

I wonder if the game can be altered so by default it uses Direct3D?


Top 
 Post Posted: Fri Apr 26, 2019 2:58 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2564
Location: Cambridge
GusCE6 wrote:
It's always good to actually have someone who knows about these things to talk to!

"Foxtail" can run in one of two ways: OpenGL is default probably because it's cross-platform, but it can also run in Direct3D mode as well. That is what the "settings.xml" file does.

On the Sony in Windows XP mode when you just try the game itself- nothing added- the window does appear, but you quickly get that "error so sorry for the inconvenience (yeah right)" window. "Foxtail" never appears in the corner, only WME. Absolutely nothing appears onscreen, it is "whitescreen." BUT- at least the window DOES appear! It does get that far.

Using WINE in the Sony's Puppy Linux mode never even gets that far. Check me on this one: my guess is that the game must at least be able to get as far as in Windows XP mode in order to "switch over" to Direct3D mode. Since absolutely nothing happens it just isn't even "turning over," let alone starting.

In the case of several other games you get a "DirectX" error message. By going to the WINE configurations and directing it to the Swiftshader 2.1 files ("d3d8.dll" and "d3d9.dll") for that game the game will work. This is what I am trying to do here.


I'd suggest (politely of course) to make your posts a bit more terse and concise - combined with actually explaining precisely the steps you've carried out - when you're describing your problem initially. :lol:
E.g. I hadn't even heard of Swiftshader (and if so, only in passing).

Anyway I had a poke around on the Interweb's....
So Swiftshader includes a DirectX 8.0 / 9.0c LLVM translation layer using a CPU backend (similar to llvmpipe I guess).

Unfortunately further searching around led me to find the system requirements, vs via CPU hardware, are:
Quote:
The magic behind SwiftShader 2.0’s performance is the SwiftASM runtime assembler. Right now, this run-time assembler only supports x86 architectures with support for SSE, SSE2, and SSE3. It is the foundation upon which the core rendering features of SwiftShader is built, and it helps reduce the overhead caused by mispredicted code branches and cache misses and the like.

So your Pentium 3 will not be supported by Swiftshader unfortunately (the SSE3 SIMD extension was first introduced in Pentium 4)...

Sorry... :cry:

Bob


Top 
 Post Posted: Sun Apr 28, 2019 3:28 pm 
Offline
Level 2
Level 2

Joined: Wed Oct 03, 2018 3:58 pm
Posts: 20
No, Swiftshader DOES work on the Pentium 3 Sony.

There are a number of different versions, including 2.0, 2.1, and 3.0.

2.0=DirectX 8 only, no SSE2 needed.

2.1=DirectX 8 & 9, no SSE2 needed.

3.0=DirectX 9 (and 8 presumably), superior to 2.1 overall but DOES require SSE2. This is likely why "Undertale" won't work on the Sony: that game and 2.1 do not play nice together and 3.0 will not work with Pentium 3.

Here is a list of games Swiftshader 2.1 has gotten running on the Sony:

Foxtail (GOG version)
Inherit the Earth: Quest for the Orb (Steam version)
Deepica
The Golden Path of Plumeboom
Plumeboom: The First Chapter
Ancient Wonderland
Mythic Pearls (90%)
Sid Meier's Pirates! 2K (but with serious problems)
Fiber Twig Midnight Puzzle
Elementals: The Magic Key
Farm Frenzy
Wizard's Curse: Deadly Spell
SCUMMVM so by extension:
*LOOM (Steam version)
*Myst Masterpiece Edition (GOG version)
Exorcist Stalker 3

However, all versions of Swiftshader DO take advantage of SSE, SSE2, and SSE3 at least if the computer has that ability. If there is a version beyond 3.0 I know nothing about it but I've tinkered around extensively with all three versions above. Be assured: only 3.0 fails to work on the Sony. Swiftshader 2.1 is the only reason "Foxtail" works in XP mode.

Update:

Something very curious has happened: I get that same OpenGL/GLX error message in another game...yet it plays.

Here is the error message from "Foxtail:"

Code:
# wine start foxtail.exe
0009:fixme:exec:SHELL_execute flags ignored 0x00000100
# 002d:fixme:heap:RtlSetHeapInformation (nil) 0 stub
002d:fixme:win:EnumDisplayDevicesW (L"\\\\.\\DISPLAY1",0,0X33F464,OX00000000), STUB!
xlib:  EXTENSION "GLX" missing on display ":0.0".
002d:err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn't  initialize OpenGL, expect problems
002d:fixme:win:RegisterTouchWindow (0x10052 00000003): stub


"Foxtail" does not work. The window does not appear even for a second. It never appears even as it did when the game failed to work in XP mode.


Now, here is what appears in the command window when starting "Plumeboom: The First Chapter:"

Code:
# wine start plumeboom_first_chapter.exe
0009:fixme:exec:SHELL execute flags ignored: 0x00000100
# Xlib: extension "GLX" missing on display ":0.0".
002e:err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn't initialize OpenGL, expect problems
002e:fixme:win:EnumDisplayDevicesW ((null),0,0x33f0c0,0x00000000), stub!



"Plumeboom" DOES work just fine. It, like "Foxtail," requires Swiftshader in order to work in XP mode. It needs Swiftshader with WINE ("Native") as well.

However, "Plumeboom" by default uses DirectX. "Foxtail" requires that "settings.xml" file in order to use DirectX instead of OpenGL.

Both of these games yield that "OpenGL/GLX" error message. But one works while the other does not. Is something else wrong here?

Also: I tried installing the "Xorg High 1.1" PET file again. Not only didn't it get anything running, it actually caused games that DID work, like "Deepica," to fail! That's a dead end.

I also replaced the "d3d8.dll" and "d3d9.dll" files in WINE's "system32" folder with the Swiftshader versions, then setting the games to use the "built in" versions rather than the "native" versions. It did not work, even though Swiftshader does get the game running when used normally and when those files are in the game folder itself ("native").

Strange. Maybe if SCUMMVM ever runs "Foxtail..."


Top 
Display posts from previous:  Sort by  
 
 Page 1 of 1 [ 14 posts ] 




Board index » WineHQ » Wine Help » Linux


Who is online

Users browsing this forum: No registered users and 22 guests

 
 

 
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 post attachments in this forum

Search for:
Jump to: