diff --git a/src/video/vid_c&t_69000.c b/src/video/vid_c&t_69000.c index 2e11764d9..4f8254477 100644 --- a/src/video/vid_c&t_69000.c +++ b/src/video/vid_c&t_69000.c @@ -1533,8 +1533,10 @@ chips_69000_write_ext_reg(chips_69000_t* chips, uint8_t val) case 0xA6: chips->ext_regs[chips->ext_index] = val; chips->svga.hwcursor.y = val | (chips->ext_regs[0xA7] & 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 0xA7: chips->ext_regs[chips->ext_index] = val;