From c1ba150e3c5335a5bc3b2ba86ed96c980daff34f Mon Sep 17 00:00:00 2001 From: TC1995 Date: Mon, 18 Dec 2023 00:40:31 +0100 Subject: [PATCH 1/2] Oops, they actually can mix together, but not with plain (non-packed) chain4 stuff enabled, should fix more mode issues in the MGA Millennium card. --- src/video/vid_mga.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/video/vid_mga.c b/src/video/vid_mga.c index cadf64bb8..69d8de0f8 100644 --- a/src/video/vid_mga.c +++ b/src/video/vid_mga.c @@ -946,7 +946,7 @@ mystique_recalctimings(svga_t *svga) } } svga->line_compare = mystique_line_compare; - svga->packed_chain4 = ((svga->gdcreg[5] & 0x60) == 0x00); + svga->packed_chain4 = !svga->chain4; } else { svga->packed_chain4 = 0; svga->line_compare = NULL; From 9573d373643ae7e0532f41a974c5f62544f55fd3 Mon Sep 17 00:00:00 2001 From: TC1995 Date: Mon, 18 Dec 2023 00:41:51 +0100 Subject: [PATCH 2/2] And warning fixes. --- src/video/vid_mga.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/video/vid_mga.c b/src/video/vid_mga.c index 69d8de0f8..c505b5cc2 100644 --- a/src/video/vid_mga.c +++ b/src/video/vid_mga.c @@ -634,12 +634,14 @@ static void wake_fifo_thread(mystique_t *mystique); static void wait_fifo_idle(mystique_t *mystique); static void mystique_queue(mystique_t *mystique, uint32_t addr, uint32_t val, uint32_t type); +#if 0 static uint8_t mystique_readb_linear(uint32_t addr, void *priv); static uint16_t mystique_readw_linear(uint32_t addr, void *priv); static uint32_t mystique_readl_linear(uint32_t addr, void *priv); static void mystique_writeb_linear(uint32_t addr, uint8_t val, void *priv); static void mystique_writew_linear(uint32_t addr, uint16_t val, void *priv); static void mystique_writel_linear(uint32_t addr, uint32_t val, void *priv); +#endif static void mystique_recalc_mapping(mystique_t *mystique); static int mystique_line_compare(svga_t *svga);