Updated DIB Engine

Austin English austinenglish at gmail.com
Tue Jan 27 14:08:06 CST 2009


On Tue, Jan 27, 2009 at 1:51 PM, Massimo Del Fedele <max at veneto.com> wrote:
> Reece Dunn ha scritto:
>> 2009/1/27 Massimo Del Fedele <max at veneto.com>:
>>> Any opinion about this one ? Could it be a good candidate for inclusion
>>> in wine tree ?
>>
>> Hi,
>>
>> I have used this with StarCraft, running it with and without the DIB
>> engine enabled. I find the environment variable makes it very easy to
>> switch between them during testing, so I am for this (as well as being
>> able to set the default option via the registry).
>
> Thanx, that was what I wanted to have :-)
>>
>> My experience with the game is that it is actually slower and has a
>> noticible stutter when compared to the non-DIB engine version. This
>> does not mean that I am opposed to this going in, as I know that the
>> blitting code is not yet optimised. In fact, I am for this to go in
>> (provided that Alexandre accepts it).
>
> Yep, the blitting code is just a "placeholder" to make most apps run,
> not an optimized one. Making it optimized is trivial but requires many
> code lines, so before proceeding I thought to wait for "approval" of the
> way the engine is done. The same is for text stuffs.
>>
>> The only thing I would say is to break it up. For example, there are
>> bits that you have taken from Jesse and Huw's efforts that are various
>> isolated patches. These should be sent in a git patch format so that
>> the authors can be attributed in the Wine git tree as well as being in
>> the Copyright notices.
>
> Well, that one could be only partially done, because I modified most of
> both Huw and Jesse's code. I let Jesse and Huw's copyright notices
> because of that, but going back from original code, joining the 2 and
> adding my mods by mean of many git patches would be overkilling.
> Even more, both trees were somehow outdated in respect to actual wine
> tree, so the automatic merge didn't work for some parts of code.
> I'd see easier to put the 3 names on each patch when (if) merged with
> main tree.
>
>  Aside from that, if you could break the DIB
>> patch into smaller logical chunks it will be easier to review and get
>> the patches in.
>
> Well, that also can be partially done :
>
> 1- First GDI32 patch, the one that allows to insert DIB Driver, without
> blitting (mostly from Huw's tree, but driver loading displaced from
> SelectBitmap to CreateDC by me, with some additions to avoid crashes if
> driver is not present.
> 2 - Starting dib engine, without blitting and (maybe) many stubs, but
> with primitives and some basic stuffs, mostly from Huw's tree, some
> small patches by me
> 3 - Blitting, which requires both patching GDI32 again and adding the
> code to DIB driver, and all stubs; all that mostly from Jesse's tree,
> many patches by me
> 4 - Initial text and font implementation, by me
> 5 - Registry and environment variable stuffs, by me
>
> Most chunks need to span over more source files.
> After that, I guess the code is defined enough to be opened for completion.
>>
>> Have you asked Alexandre on IRC what he thinks of the design?
>>
> No.... I'm not using IRC since ages :-)
> Is this the way to ask him ?

He's usually on IRC, nickname julliard.

Though, to be frank, his lack of response to the e-mails leads me to
believe either:
A) He doesn't like the design.
B) Is really busy, and hasn't had time to look it thoroughly.
C) Both.

-- 
-Austin



More information about the wine-devel mailing list