From da3203a6c10c48426d1296a7abaf2a74da3878c2 Mon Sep 17 00:00:00 2001 From: Cacodemon345 Date: Fri, 9 Feb 2024 00:20:59 +0600 Subject: [PATCH] Force interlace to be off at 1280x1024 --- src/video/vid_c&t_69000.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/video/vid_c&t_69000.c b/src/video/vid_c&t_69000.c index 4f8254477e..cbfb7b6d68 100644 --- a/src/video/vid_c&t_69000.c +++ b/src/video/vid_c&t_69000.c @@ -747,8 +747,8 @@ chips_69000_recalctimings(svga_t *svga) svga->interlace = !!(svga->crtc[0x70] & 0x80); - if (svga->dispend == 2002 && svga->hdisp == 1024) { - svga->dispend = 1280; + if (svga->hdisp == 1280 && svga->dispend == 1024) { + svga->interlace = 0; } switch (chips->ext_regs[0x81] & 0xF) { @@ -1541,8 +1541,10 @@ chips_69000_write_ext_reg(chips_69000_t* chips, uint8_t val) case 0xA7: chips->ext_regs[chips->ext_index] = val; chips->svga.hwcursor.y = chips->ext_regs[0xA6] | (val & 7) << 8; - if (chips->ext_regs[0xA7] & 0x80) - chips->svga.hwcursor.y = -chips->svga.hwcursor.y; + if (chips->ext_regs[0xA7] & 0x80){ + chips->svga.hwcursor.yoff = chips->svga.hwcursor.y; + chips->svga.hwcursor.y = 0; + } break; case 0xC8: case 0xC9: