http://bugs.winehq.org/show_bug.cgi?id=21510
Summary: Ogre3D based game doesn't get any (mouse/keyboard) user input Product: Wine Version: 0.9.11. Platform: x86 URL: http://193.219.43.130/~winetester/bin/win32/SpaceBandi ts/space_bandits_game.zip OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: saulius2@gmail.com
Pseudo-game called "Space Bandits" start's up and then I can only Ctrl-C it via the console terminal. The game outputs own debug data to stderr, so I've added +tid channel to make difference. Then wine prints only 2 lines, so there are they:
0009:err:reg:SCSI_getprocentry SCSI type line scan count error (fscanf returns 1, expected 2) 0009:fixme:ddraw:DirectDrawEnumerateExA no non-display devices supported.
This is regression (or revealed bug) from quite old times [1]:
commit e66e34ef7b5ad61bda09067e6ea8f8990017b5de Author: Vitaliy Margolen wine-patch@kievinfo.com Date: Sat Mar 18 11:26:37 2006 -0700
dinput: Create single thread for mouse and keyboard hook.
Put keyboard & mouse hook callbacks into separate thread. Move few global variables into object. Delete no longer used crit section. For hooks to work properly hook callback have to be in a thread with message loop. Some games create separate threads just to handle mouse and/or keyboard events that do not have message loop.
I know about bug 8854 where *both* keyboard and mouse input doesn't work. But in it we have different offending patch.
This game has it's cpp-source in zip, but the main loop comes probably from Ogre3D lib which version used to build the game was quite old.
[1] http://source.winehq.org/git/wine.git/?a=commit;h=e66e34ef7b5ad61b
http://bugs.winehq.org/show_bug.cgi?id=21510
Saulius K. saulius2@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, regression, | |source CC| |vitaliy@kievinfo.com
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #1 from Saulius K. saulius2@gmail.com 2010-01-27 13:56:04 --- Essential detail. Input doesn't work in OpenGL mode only. But it doesn't matter whether Virtual Desktop is emulated or not.
D3D7/9 modes work nice.
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #2 from Saulius K. saulius2@gmail.com 2010-02-16 15:50:46 --- For anyone's interest, here is the source code (~14 megs of tarball) used to build this pseudo-game:
[2] http://sourceforge.net/projects/ogre/files/ogre/0.12.1/
http://bugs.winehq.org/show_bug.cgi?id=21510
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|vitaliy@kievinfo.com |
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #3 from Saulius K. saulius2@gmail.com 2010-07-15 01:50:46 --- The behaviours hasn't changed. Now, before the setup dialog these debug lines are printed by Wine (not the game itself):
0009:fixme:ddraw:DirectDrawEnumerateExA flags 0x00000005 not handled 0009:fixme:win:EnumDisplayDevicesW ((null),0,0x32ebb4,0x00000000), stub! 0009:fixme:win:EnumDisplayDevicesW ((null),0,0x32f4cc,0x00000000), stub!
And after I press OK, I get only this line:
0009:fixme:dinput:SysMouseAImpl_Acquire Clipping cursor to (0,0)-(1280,1024)
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #4 from Saulius K. saulius2@gmail.com 2010-08-06 13:56:10 --- Present in Wine 1.2.
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #5 from Saulius K. saulius2@gmail.com 2010-08-07 00:39:05 --- Present in Wine 1.3 also.
http://bugs.winehq.org/show_bug.cgi?id=21510
Saulius K. saulius2@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Ogre3D based game doesn't |Ogre3D based game doesn't |get any (mouse/keyboard) |get any (mouse/keyboard) |user input |user input in OpenGL mode
http://bugs.winehq.org/show_bug.cgi?id=21510
joaopa jeremielapuree@yahoo.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jeremielapuree@yahoo.fr
--- Comment #6 from joaopa jeremielapuree@yahoo.fr 2011-07-30 04:11:30 CDT --- still a bug in current wine?
http://bugs.winehq.org/show_bug.cgi?id=21510
Henri Verbeet hverbeet@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |e66e34ef7b5ad61bda09067e6ea | |8f8990017b5de
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #7 from Saulius K. saulius2@gmail.com 2011-08-12 02:33:22 CDT --- Yes, the bug is still present in Wine 1.3.26 . Additional detail I noticed just now:
If I run the game in Virtual Desktop (in OpenGL mode) and if I press Close button of the window, after some time there appears Wine internal window titled "Waiting for program" and asking me either to Terminate the non-responding process or to Cancel. If I move mouse outside it, then games objects behind the window starts rotating -- the game starts receiving mouse input.
http://bugs.winehq.org/show_bug.cgi?id=21510
Vitaliy Margolen vitaliy-bugzilla@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|regression | Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Regression SHA1|e66e34ef7b5ad61bda09067e6ea | |8f8990017b5de |
--- Comment #8 from Vitaliy Margolen vitaliy-bugzilla@kievinfo.com 2011-11-03 22:53:48 CDT --- Not a regression per see. Same problem present with native dinput. Something tells me that ogre doesn't have message loop in OpenGL mode in thread that owns main window.
Confirming.
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #9 from Saulius K. saulius2@gmail.com 2011-11-04 02:50:50 CDT --- (In reply to comment #8)
Not a regression per see.
Then how do you define the situation, please -- eg. the commit introduced new feature which revealed old Wine bug? Or something else?
Same problem present with native dinput. Something tells me that ogre doesn't have message loop in OpenGL mode in thread that owns main window.
So a test-case is needed, right?
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #10 from Vitaliy Margolen vitaliy-bugzilla@kievinfo.com 2011-11-04 08:34:48 CDT --- (In reply to comment #9) Technically it is a regression. However, game doesn't work with native dinput too. So it's not caused by my patch. Old dinput code just happened to work around orge's bug.
Don't really need a test case - have plenty of those here. With the way input works in Wine thread owning the main window have to run a message loop to pull X11 events and deliver them to dinput.
http://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #11 from Saulius K. saulius2@gmail.com 2011-11-04 09:05:04 CDT --- Thank you,
(In reply to comment #10)
Don't really need a test case - have plenty of those here.
But is there at least single one wine_todo indicating this way?
thread owning the main window have to run a message loop to pull X11 events and deliver them to dinput.
Anys ideas which units of Wine should be changed?
https://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #12 from Austin English austinenglish@gmail.com --- Is this still an issue in current (1.7.13 or newer) wine? If so, please update the download url and attach the terminal output.
https://bugs.winehq.org/show_bug.cgi?id=21510
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |focht@gmx.net Resolution|--- |ABANDONED
--- Comment #13 from Anastasius Focht focht@gmx.net --- Hello folks,
no further response from OP, download is dead -> resolving 'abandoned'.
Regards
https://bugs.winehq.org/show_bug.cgi?id=21510
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #14 from Austin English austinenglish@gmail.com --- Closing.
https://bugs.winehq.org/show_bug.cgi?id=21510
Saulius K. saulius2@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|CLOSED |REOPENED URL|http://193.219.43.130/~wine |http://158.129.146.2/~winet |tester/bin/win32/SpaceBandi |ester/bin/win32/SpaceBandit |ts/space_bandits_game.zip |s/space_bandits_game.zip Resolution|ABANDONED |---
--- Comment #15 from Saulius K. saulius2@gmail.com --- I'm sorry for not updating URL after a apache migration.
https://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #16 from Saulius K. saulius2@gmail.com --- Still present.
https://bugs.winehq.org/show_bug.cgi?id=21510
--- Comment #17 from Saulius K. saulius2@gmail.com --- (In reply to Saulius K. from comment #16)
Still present.
In 1.7.21 .
https://bugs.winehq.org/show_bug.cgi?id=21510
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED CC| |gyebro69@gmail.com Resolution|--- |DUPLICATE
--- Comment #18 from Béla Gyebrószki gyebro69@gmail.com --- Still present in wine-1.7.34-74-gcf92569
The patch from wine-staging fixes the issue: https://github.com/wine-compholio/wine-staging/blob/master/patches/dinput-Ev...
Duplicate of bug #8854
*** This bug has been marked as a duplicate of bug 8854 ***
https://bugs.winehq.org/show_bug.cgi?id=21510
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #19 from Austin English austinenglish@gmail.com --- Closing.