On Jan 12, 2015, at 4:12 AM, Gerd Hoffmann wrote:
> Hi,
>
>> + /* Determines the pixel format of the frame buffer */
>> + if (surface->format == PIXMAN_b8g8r8x8) {
>> + bitmap_info = kCGBitmapByteOrder32Big | kCGImageAlphaNoneSkipFirst;
>> + }
>
> That certainly goes into the right direction.
Thank you.
>
> PIXMAN_* is native endian though, so I expect this will work on the
> intel macos host you are testing on but will fail on powerpc macos
> hosts.
Unfortunately there appears to be no way to know. The last PowerPC Macs came
out over 9 years ago. There probably isn't anyone on the list who uses one.
>
> I suggest to add fixed endian defines for 32bpp to
> include/ui/qemu-pixman.h (there already is one for 24bpp), then use
> these to avoid cluttering the cocoa code with HOST_WORDS_BIGENDIAN
> #defines.
>
> The colorspace bits look sane to me, I'm not macos x expert enough to
> really justify.
If someone volunteered to test any code changes on their PowerPC Mac, then I
would try this.