Hello,
On Sun, 2 Mar 2025, Hab Gallagher wrote:
I have interest in contributing patches to extend qemu's powerpc graphics
card emulation to include more comprehensive support for gamma. Some
classic mac applications will balk at launch if the graphics card doesn't
claim enough support for gamma tricks. Native parity should be possible,
allowing applications to ramp the apparent screen brightness using gamma
tricks.
As far as I can tell, both https://github.com/ozbenh/QemuMacDrivers and
qemu itself need to be updated for this endeavor. It is unclear to me how
much of the code "should" live in one repository or the other. I assume
that it would be preferable to put as little code as possible into the
driver that runs emulated, and move the bulk of the work to the driver
side, in the qemu host.
That driver is for a VGA device which I think does not support gamma in
hardware. QEMU emulates the hardware so if it does not support gamma then
there's no place to add it in QEMU. Therefore if you want to emulate gamma
on VGA this should be done within the guest driver but that may be slower.
How does this work on real hardware? What graphics device is used there
and does that support gamma in hardware? Maybe that graphics device needs
to be emulated instead?
I could not find any existing work on this, nor anyone asking about the
feature. I don't have experience hacking on qemu, but I have extensively
patched SheepShaver before. I hope to contribute more to qemu-ppc instead.
I have an article on AmigaOS gfx here:
https://codeberg.org/qmiga/pages/wiki/AmigaOSGfx
that discusses similar issue and most of it may be applicable to MacOS
too. There's also a DeveloperTips link with some QEMU getting started
links that may help you. I have started an ati-vga emulation that could do
all this and more but it's quite complex and I could take some help with
it. Maybe that could be interesting to you as well as these ATI chips were
used on real Macs so MacOS has support for it. I also have an article
linked from the above about that.
Regards,
BALATON Zoltan