[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Question about hardware cursor in VGA
From: |
Gerd Hoffmann |
Subject: |
Re: [Qemu-devel] Question about hardware cursor in VGA |
Date: |
Wed, 6 Mar 2019 07:07:44 +0100 |
User-agent: |
NeoMutt/20180716 |
On Wed, Mar 06, 2019 at 12:48:59AM +0100, BALATON Zoltan wrote:
> On Tue, 5 Mar 2019, Gerd Hoffmann wrote:
> > On Mon, Mar 04, 2019 at 03:58:00PM +0100, BALATON Zoltan wrote:
> > > Hello,
> > >
> > > I'm trying to implement hardware cursor for ati-vga before submitting the
> > > last version of it before the freeze.
> >
> > Use dpy_cursor_define().
>
> I've done that but it's not working very well. The mouse pointer is quite
> jumpy with this and there are some problems updating the pointer image when
> the guest changes image data in video ram without changing registers. (Like
When using a relative pointing device (i.e. mouse instead of tablet) you
also need dpy_mouse_set(), to update the host mouse position when the
guest moves the cursor sprite around.
Is it possible to figure where the cursor hotspot is?
> least doing hw cursor like this works somewhat but I note that the other
> version with cursor_invalidate and cursor_draw_line callbacks worked much
> smoother, alas I've found that cannot work with shared_surface.
There is a VGAComminState->force_shadow ...
> should be? (Also note that draw_line callback could do complement pixels but
> that's not possible with dpy_cursor_define.)
Yep, dpy_cursor_define is designed for the way modern hardware handles
hardware cursors, to allow it being used as hardware cursor on the host.
cirrus has a few modes which modern hardware can't do, thats why it
doesn't use dpy_cursor_define.
Has ati cursor a complement pixel mode too?
cheers,
Gerd