Hi, > > > +static void ati_vga_update_irq(ATIVGAState *s) > > > +{ > > > + pci_set_irq(&s->dev, s->regs.gen_int_status & 1); > > > > This should be "s->regs.gen_int_status & s->regs.gen_int_cntl" I guess? > > Probably, but we only try to emulate VBlank yet so to avoid any problems due > to raising irq for unknown bits I restricted it for that now.
Well, qemu doesn't set unknown status bits, only vblank. The guest can't set them either due to status register having write-one-to-clear semantics. So, that should not happen. If you want an extra check to catch programming errors I'd suggest to add an assert() for that. > > > + s->regs.gen_int_status &= ~data; > > > > ati_vga_update_irq() needed here too. > > Thanks. Indeed I forgot this. With that it works a bit better, mouse now can > be moved but only vertically... No idea why, I'll have to check, Still progress. One step at a time ;) cheers, Gerd