Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/17/06, Willie Sippel willie@zeitgeistmedia.net wrote:
Am Freitag, 17. März 2006 20:12 schrieb pagefault:
Hi there, I work on ZSNES and I was trying to get it working under wine and I ran into a small bug when running under a 32 bit desktop.
This fixed a bug in the DeviceGetCaps() function used to return the current bitdepth of the desktop. It is my understanding that X11 returns "24" as the bitdepth while running a 32 bit framebuffer. I have seen in the code where it does change the 24 to 32, but I have discovered a spot where this has been missed.
The following is the changes I made, it simply returns 32 if the user has a 24 bit desktop.
With your patch applied, two applications I tested (Newtek Aura and Bauhaus/ TVPaint Mirage) show an odd bug. Only the window background gets drawn, but all the widgets are missing, or, more precisely, invisible. Both applications use their own toolkit - Mirage is infact Aura's successor, so their drawing code should be very similar. But Aura's used to work, while Mirage's always produced borked results - painting stuff blue and distorted instead of gray.
-- Willie Sippel
//////// | Tritium Studios // | ______________________________ //// /// | http://www.tritium-studios.com
Ok, this is rather odd. Do those apps work properly when the patch is not applied? Also do you know if these apps are using DirectDraw?
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/17/06, Willie Sippel willie@zeitgeistmedia.net wrote:
Am Freitag, 17. März 2006 20:12 schrieb pagefault:
Hi there, I work on ZSNES and I was trying to get it working under wine and I ran into a small bug when running under a 32 bit desktop.
This fixed a bug in the DeviceGetCaps() function used to return the current bitdepth of the desktop. It is my understanding that X11 returns "24" as the bitdepth while running a 32 bit framebuffer. I have seen in the code where it does change the 24 to 32, but I have discovered a spot where this has been missed.
The following is the changes I made, it simply returns 32 if the user has a 24 bit desktop.
With your patch applied, two applications I tested (Newtek Aura and Bauhaus/ TVPaint Mirage) show an odd bug. Only the window background gets drawn, but all the widgets are missing, or, more precisely, invisible. Both applications use their own toolkit - Mirage is infact Aura's successor, so their drawing code should be very similar. But Aura's used to work, while Mirage's always produced borked results - painting stuff blue and distorted instead of gray.
-- Willie Sippel
//////// | Tritium Studios // | ______________________________ //// /// | http://www.tritium-studios.com
Updated my patch. I had placed it in the wrong function, this is a lot lower in the pipeline and should not conflict with other code. Please test.
--- dlls/gdi/dc2.c 2006-03-18 00:46:11.000000000 -0500 +++ dlls/gdi/dc.c 2006-03-15 09:50:32.000000000 -0500 @@ -905,11 +905,6 @@ } GDI_ReleaseObj( hdc ); } - - // Windows returns a 32-bit depth (24-bit effective) - - if (caps == BITSPIXEL && ret == 24) ret = 32; - return ret; }
On 3/18/06, pagefault pagefault@gmail.com wrote:
Ok, this is rather odd. Do those apps work properly when the patch is not applied? Also do you know if these apps are using DirectDraw?
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/17/06, Willie Sippel willie@zeitgeistmedia.net wrote:
Am Freitag, 17. März 2006 20:12 schrieb pagefault:
Hi there, I work on ZSNES and I was trying to get it working under wine and I ran into a small bug when running under a 32 bit
desktop.
This fixed a bug in the DeviceGetCaps() function used to return the current bitdepth of the desktop. It is my understanding that X11 returns "24" as the bitdepth while running a 32 bit framebuffer. I have seen in the code where it does change the 24 to 32, but I have discovered a spot where this has been missed.
The following is the changes I made, it simply returns 32 if the
user
has a 24 bit desktop.
With your patch applied, two applications I tested (Newtek Aura and
Bauhaus/
TVPaint Mirage) show an odd bug. Only the window background gets
drawn, but
all the widgets are missing, or, more precisely, invisible. Both
applications
use their own toolkit - Mirage is infact Aura's successor, so their
drawing
code should be very similar. But Aura's used to work, while Mirage's
always
produced borked results - painting stuff blue and distorted instead of
gray.
-- Willie Sippel
//////// | Tritium Studios // | ______________________________ //// /// | http://www.tritium-studios.com
Updated again, this should be the final patch. Sorry for spamming. :)
On 3/18/06, pagefault pagefault@gmail.com wrote:
Updated my patch. I had placed it in the wrong function, this is a lot lower in the pipeline and should not conflict with other code. Please test.
--- dlls/gdi/dc2.c 2006-03-18 00:46:11.000000000 -0500 +++ dlls/gdi/dc.c 2006-03-15 09:50:32.000000000 -0500 @@ -905,11 +905,6 @@ } GDI_ReleaseObj( hdc ); }
- // Windows returns a 32-bit depth (24-bit effective)
- if (caps == BITSPIXEL && ret == 24) ret = 32;
- return ret;
}
On 3/18/06, pagefault pagefault@gmail.com wrote:
Ok, this is rather odd. Do those apps work properly when the patch is not applied? Also do you know if these apps are using DirectDraw?
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/18/06, pagefault pagefault@gmail.com wrote:
Thanks for testing it out. I will try to get a copy of these apps and figure out whats going on.
On 3/17/06, Willie Sippel willie@zeitgeistmedia.net wrote:
Am Freitag, 17. März 2006 20:12 schrieb pagefault:
Hi there, I work on ZSNES and I was trying to get it working
under
wine and I ran into a small bug when running under a 32 bit
desktop.
This fixed a bug in the DeviceGetCaps() function used to return
the
current bitdepth of the desktop. It is my understanding that X11 returns "24" as the bitdepth while running a 32 bit framebuffer.
I
have seen in the code where it does change the 24 to 32, but I
have
discovered a spot where this has been missed.
The following is the changes I made, it simply returns 32 if the
user
has a 24 bit desktop.
With your patch applied, two applications I tested (Newtek Aura and
Bauhaus/
TVPaint Mirage) show an odd bug. Only the window background gets
drawn, but
all the widgets are missing, or, more precisely, invisible. Both
applications
use their own toolkit - Mirage is infact Aura's successor, so their
drawing
code should be very similar. But Aura's used to work, while
Mirage's
always
produced borked results - painting stuff blue and distorted instead
of
gray.
-- Willie Sippel
//////// | Tritium Studios // | ______________________________ //// /// | http://www.tritium-studios.com
Am Samstag, 18. März 2006 07:59 schrieb pagefault:
Updated again, this should be the final patch. Sorry for spamming. :)
This patch actually made it somewhat worse. Mirage shows the same bug as with your previous patch, only draws the backgound but no widgets. The background, however, is grey (which is correct), not blue as it used to be without your patch. Aura shows the missing widgets bug like before, but the background is transparent instead of light grey with your new patch applied.
Thanks for the link, i'll get those installed to try to find out why it is expecing a 24-bit value. Perhaps it is designed to work on a video card that supports 24-bit, I know a lot of modern hardware don't really support true 24-bit mode, but this app probably would support it.
On 3/18/06, Willie Sippel willie@zeitgeistmedia.net wrote:
Am Samstag, 18. März 2006 07:59 schrieb pagefault:
Updated again, this should be the final patch. Sorry for spamming. :)
This patch actually made it somewhat worse. Mirage shows the same bug as with your previous patch, only draws the backgound but no widgets. The background, however, is grey (which is correct), not blue as it used to be without your patch. Aura shows the missing widgets bug like before, but the background is transparent instead of light grey with your new patch applied.
-- Willie Sippel
//////// | Tritium Studios // | ______________________________ //// /// | http://www.tritium-studios.com
Am Samstag, 18. März 2006 06:53 schrieb pagefault:
Ok, this is rather odd. Do those apps work properly when the patch is not applied? Also do you know if these apps are using DirectDraw?
Like I said, Aura used to work. Mirage used to have drawing errors, but completely different from the errors introduced by your patch. A demo of Mirage is available at: http://www.bauhaussoftware.com/downloads/Trials/download_MIRAGE_PC.aspx
And Aura at: ftp://ftp.newtek.com/pub/Aura/Patches/AVP25_installer.exe
Both applications are able to use DDraw for the canvas AFAIK, but DDraw is not used for the GUI.
I'll check your updated patch and report again later.