qemu-devel
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]