[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 10/13] macfb: fix up 1-bit pixel encoding
From: |
Laurent Vivier |
Subject: |
[PULL 10/13] macfb: fix up 1-bit pixel encoding |
Date: |
Fri, 8 Oct 2021 13:45:15 +0200 |
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
The MacOS driver expects the RGB values for the pixel to be in entries 0 and 1
of the colour palette.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20211007221253.29024-11-mark.cave-ayland@ilande.co.uk>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
hw/display/macfb.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hw/display/macfb.c b/hw/display/macfb.c
index 2759fb5e34d1..e49c8b6f4b52 100644
--- a/hw/display/macfb.c
+++ b/hw/display/macfb.c
@@ -128,7 +128,9 @@ static void macfb_draw_line1(MacfbState *s, uint8_t *d,
uint32_t addr,
for (x = 0; x < width; x++) {
int bit = x & 7;
int idx = (macfb_read_byte(s, addr) >> (7 - bit)) & 1;
- r = g = b = ((1 - idx) << 7);
+ r = s->color_palette[idx * 3];
+ g = s->color_palette[idx * 3 + 1];
+ b = s->color_palette[idx * 3 + 2];
addr += (bit == 7);
*(uint32_t *)d = rgb_to_pixel32(r, g, b);
--
2.31.1
- [PULL 00/13] M68k next patches, Laurent Vivier, 2021/10/08
- [PULL 01/13] macfb: handle errors that occur during realize, Laurent Vivier, 2021/10/08
- [PULL 04/13] macfb: fix overflow of color_palette array, Laurent Vivier, 2021/10/08
- [PULL 02/13] macfb: update macfb.c to use the Error API best practices, Laurent Vivier, 2021/10/08
- [PULL 09/13] macfb: add common monitor modes supported by the MacOS toolbox ROM, Laurent Vivier, 2021/10/08
- [PULL 10/13] macfb: fix up 1-bit pixel encoding,
Laurent Vivier <=
- [PULL 12/13] macfb: add vertical blank interrupt, Laurent Vivier, 2021/10/08
- [PULL 06/13] macfb: add trace events for reading and writing the control registers, Laurent Vivier, 2021/10/08
- [PULL 11/13] macfb: fix 24-bit RGB pixel encoding, Laurent Vivier, 2021/10/08
- [PULL 13/13] q800: wire macfb IRQ to separate video interrupt on VIA2, Laurent Vivier, 2021/10/08
- [PULL 05/13] macfb: use memory_region_init_ram() in macfb_common_realize() for the framebuffer, Laurent Vivier, 2021/10/08
- [PULL 08/13] macfb: add qdev property to specify display type, Laurent Vivier, 2021/10/08
- [PULL 03/13] macfb: fix invalid object reference in macfb_common_realize(), Laurent Vivier, 2021/10/08
- [PULL 07/13] macfb: implement mode sense to allow display type to be detected, Laurent Vivier, 2021/10/08
- Re: [PULL 00/13] M68k next patches, Richard Henderson, 2021/10/08