On Thu, 28 Mar 2024, Rene Engel wrote:
I wanted to discuss this topic with you again, there was already a patch series
that worked well under Qemu with
Pegasos2/AmigaOneXe/Same460 and AmigaOs4.1. The option zoom-to-fit=on should be
used to adjust all resolutions provided by the guest
system to the aspect ratio if there are no Virtio GPU drivers available that
allow this.
In my opinion exactly this option zoom-to-fit=on makes this possible. If you
don't want to use this option you still have the possibility
to deactivate it. In Qemu 9.0 RC1 not all resolutions are stretched like in
previous patches e.g. 640x480/800x600/1024x720 etc. but this
is exactly what we need for the Pegasos2/AmigaOneXe/Same460 machine with
AmigaOs4.1.
There seems to be a bit of confusion about how this zoom-to-fit option is
implemented by different -display backends and I'm not sure what is the
intended behaviour or how other -display backends handle it. Maybe a
single option is not even enough to describe all possible preferences so
another one i.e. keep-aspect=true|false may also be needed to cover all
possible settings (don't zoom, zoom with aspect ratio kept, zoom to fit
window even if that stretches the picture out of aspect ratio). For 9.0
ptobsbly we should go for consistency with other backends now as adding
new options is not possible during freeze and then resolve this
afterwards.
There are also problems within the resolutions with the mouse pointer
where the screen output flickers it currently affects all patch series.
I would be happy if we could find a solution for all this.
The flicker may be due to the resize algorithm used by macOS not giving
the same result always. To resolve it maybe yet another option may be
needed to not zoom to full available window but try to keep the zoom
factor some integer value to avoid fractional scaling but I'm not sure
that's the best way to solve it.
Regards,
BALATON Zoltan
I'll leave you 2 videos so you can decide for yourself what would make the most
sense. It shows once for me the working zoom behavior
which works very well and the behavior with Qemu 9.0Rc1 including new Cocoa
patches.
Qemu zoom-to fit=on for all Screenmodes working:
https://www.youtube.com/watch?v=dnJ3W8egAFY
Qemu 9.0. RC1 zoom-to fit=on not working for all Screenmodes:
https://www.youtube.com/watch?v=Ddq68ViudrA