Dear grx pals,
I have revised the problems I've found in grx, and there is a test program to reproduce them (bugtest.c). It should be linked to libgrx, and the additional bugfix files intermitently linked in the program, to allow you to observe the problems and their proposed solutions.
n.b: sorry, no diff submit yet
My best regards, Alex
Hi, Alex.
- About the drawstrg bug.
It isn't (and if it were a bug the correct place to check is in the fdriver, because it must know how to get the color from a GrColor variable).
The problem is in the test program. GrAllocEgaColors must be placed _after_ GrSetMode.
- About the bitblt1 bug.
Yes, thanks, I now see the bug. I will apply your patch:
--- bitblt1b.old Sat Apr 14 03:56:00 2001 +++ bitblt1b.c Tue Oct 22 21:43:58 2002 @@ -50,7 +50,9 @@
(dst->gc_driver->drawbitmap)((dx + dst->gc_xoffset),(dy + dst->gc_yoffset), (x2 - x1 + 1),(y2 - y1 + 1),src->gc_baseaddr[0],src->gc_lineoffset,
- ((dx - oldx1) + ((dy - oldy1) * (src->gc_lineoffset << 3))),fg,bg);
+ /*alex:the offset should anyway be the x1,y1 point in src, as clipped*/ + (x1 + (y1 * ((dx - oldx1) + ((dy - oldy1) * (src->gc_lineoffset << 3))), + fg,bg);
mouse_unblock(); }
(Are you here Josu?, do you think is ok?)
- About the 1024*768*4bpp problem
I can't reproduce it in none of my PC's, they all work well. Have you checked the modetest program?. What about if you set GRX20DRV=VESA?
Thanks a lot for your work Alex.
Regards, M.Alvarez
Mariano Alvarez Fernandez a écrit:
Hi, Alex.
- About the 1024*768*4bpp problem
I had an answer last year from Harmut Schirmer for the same problem. one of the message follows:
----------------------------------------------------------------
On Wed, 28 Mar 2001, Maurice Lombardi wrote:
Hartmut Schirmer wrote:
This can be done using the environment and appending ::r (?) after the driver specs, IIRC.
Indeed with
set GRX20DRV=VESA::R gw 1024 gh 768 nc 16
the various programs launched by demogrx work while without the ::R they fail as described previously.
So it´s either a problem with the GRX pm banking code or with the ATI bios pm banking code. If its a problem with the bios, we could try to auto detect the problem after mode setup in PM banking mode and fall back to real mode banking ...
Please use ::B to force banking instead of linear framebuffer and check if the 8bpp modes and up still work. If they fail try ::BR ...
Hartmut
-------------------------------------------------------------
Hope this helps
Maurice