Some ideas/bugs that turned out while playing Fallout
Jukka Heinonen
jhei at iki.fi
Mon Mar 26 02:23:26 CST 2001
I installed latest Wine snapshot and got Fallout running.
However, after I played with Fallout for some time, I found out that
there are certain issues with Wine that make playing Fallout a bit
irritating. Since these issues likely affect lots of games and also
many other applications, I decided to make some bug reports and
suggestions. I *might* be interested to do some work on these myself,
but before doing anything, I want to get some feedback on these issues:
1. Lost keyboard/mouse events. When typing something
to text dialogs, I noticed that if I type too fast Wine
ignores some of the typed letters. Similarly, I sometimes
have to press mouse buttons multiple times in order to get
the Wine window to recognize mouse clicks. These are definitely
bugs.
2. Sound quality was usually good but sometimes there were
short pauses at regular intervals in the playback. I guess
this was because hardware buffers got empty and soundcard
stopped playing for a short time. Another problem was
that if Fallout had music enabled it was possible that
music playback took so much CPU time that the whole
machine got very sluggish and Wine window stopped receiving
mouse/keyboard input.
It is likely that both of these problems were due to too slow
a machine (Pentium MMX 200) but they still are annoying. What I would
suggest would be to add to Wine configuration options like this:
* No sound. Even though Linux might have working sound drivers
it might be that sound just does not work in Wine. Better to
be able to disable sound from Wine applications in this case.
Also good for really slow machines.
* Reduced quality sound. Use sound hardware as if it was only able to
do something like mono/8 bits/8000 Hz. Doesn't sound terribly good,
but hopefully CPU load is reduced. Haven't looked at Wine code
to see if this would be the case.
* Full quality sound. This should be the default.
3. Running full screen mode applications was not easy.
First of all, if I did not use desktop-in-window mode and
the full screen window lost focus then I had no way of getting
focus back to Wine window. Also, Fallout only run few seconds
before freezing in this mode.
On the other hand, desktop-in-window mode worked. However,
this window had the annoying property that if I accidentally
gave it focus, it took lots of effort to get focus out of this
window. Ok, I should be using click-to-focus instead of focus
to window under mouse but I think having to change window manager
configuration to get Wine work is not right. On the other hand,
it was way too easy to get focus out of the Wine window.
Fallout and many other full screen games scroll when you move
mouse to the edge of the Wine window and this quite often
resulted in Wine losing focus. This is not a good thing if
you use CTRL-ALT-PLUS/MINUS to change resolution to 640x400 since
this causes nasty scrolling.
So, I have the following suggestion for full-screen mode.
When application requests full-screen mode, open big black window
on top of all other windows and draw application window in center
of that. If there is some way to get X server to keep
viewport centered when resolution is manually changed
this would work quite well, otherwise it might be necessary to
put the Wine window to some corner. If would be really great if
Wine could ask X server to change resolution. Perhaps an extension
to X server (or just reading X server manuals) would be needed...
Moving mouse out of this window should not work. This would
keep lots of games (and players) happy. If this window
lost focus (window managers usually have keys to move focus to other
windows) then the full-screen Wine window should be replaced by
a miniature window of the full-screen application. Clicking this
miniature would naturally reopen the big fullscreen window.
In order to keep users happy, there should some key to miniaturize
the full-screen application. If window manager did not already use
ALT-TAB then that might be a good candidate. Also, you should
be able to miniaturize the window using mouse. This could be done
Windows-like by moving the mouse to the edge of the screen
(or maybe corner?) and keeping it there for several seconds.
After this time, a bar would appear. Clicking this bar would
miniaturize the window. This might still look funny if an application
scrolls when mouse is moved to the edge of the screen, but it would
otherwise not cause problems with the scrolling itself.
Finally, in order to keep users not too surprised, it might be good
idea to show for a few seconds some text on top of the full-screen
window when the window "steals" the display. Something like:
"Wine / xyz.exe / Use alt-tab or move mouse to edge of screen to hide"
4. There should be some documentation on using Wine with
Linux kernel automounter. Like whether it works or not and
does it make using games with multiple CDs easier etc.
And I was just wondering should Wine try to manually
mount/unmount CDROMs if you don't use automounter.
--
Jukka Heinonen <http://www.iki.fi/jhei/>
More information about the wine-devel
mailing list