David Elliott wrote:
On 2002.01.28 02:12 Gavriel State wrote:
There would be no appreciable differences. As I said, this was mostly something we were just toying with.
Very interesting. I was considering making an RFB (the VNC protocol) backend for Wine for about the same reason. That is that the only really decent driver is X11 right now since ttydrv is fairly useless.
Hmm, maybe I should actually do that. As an added bonus since VNC is just basically a generic framebuffer it would allow a fairly easy port to another generic framebuffer interface such as LinuxFB (or whatever the new hot-shit FB project for Linux is these days).
Well, the sdldrv is a long way from being capable of that kind of thing. 8-)
The big thing that's missing is a real GDI renderer. It's great to have something that can kind-of do a bitblt, but if you want to have windows and menus and such on the screen, a real renderer is needed. Aside from BitBlit-ing, it would need to handle polygons, brushes, pens, clipping, and most painfully, text. It's possible that some of Huw's recent work might help there, but I'm not sure - I think that XRender actually requires X...
Now, the interesting thing is this: Once we have a GDI renderer, we can eliminate a *huge* amount of DIBSection cruft from the X11 driver. Currently Wine goes through astounding manipulations to get X to draw things for us when we should be doing it ourselves. This is very slow, and affects more apps than you might think (ie: WordPerfect).
We actually have a co-op student (Hi Jonathan!) who we've asked to look into this a bit. He's quite new to Wine, and has some other duties as well, but I'm sure that he would be interested in sharing the work. 8-)
-Gav