Indicate interlaced modes in status bar

This commit is contained in:
Cacodemon345
2025-08-18 23:35:09 +06:00
parent 69853ed832
commit 69d5b8b576
5 changed files with 13 additions and 2 deletions

View File

@@ -1146,6 +1146,7 @@ svga_recalctimings(svga_t *svga)
if (dev->dispofftime < TIMER_USEC)
dev->dispofftime = TIMER_USEC;
svga->monitor->mon_interlace = !!dev->interlace;
ibm8514_set_poll(svga);
} else
svga_set_poll(svga);
@@ -1164,6 +1165,7 @@ svga_recalctimings(svga_t *svga)
if (xga->dispofftime < TIMER_USEC)
xga->dispofftime = TIMER_USEC;
svga->monitor->mon_interlace = !!xga->interlace;
xga_set_poll(svga);
} else
svga_set_poll(svga);
@@ -1182,6 +1184,7 @@ svga_recalctimings(svga_t *svga)
if (dev->dispofftime < TIMER_USEC)
dev->dispofftime = TIMER_USEC;
svga->monitor->mon_interlace = !!dev->interlace;
ibm8514_set_poll(svga);
} else if (xga->on) {
_dispofftime_xga = disptime_xga - _dispontime_xga;
@@ -1195,6 +1198,7 @@ svga_recalctimings(svga_t *svga)
if (xga->dispofftime < TIMER_USEC)
xga->dispofftime = TIMER_USEC;
svga->monitor->mon_interlace = !!xga->interlace;
xga_set_poll(svga);
} else
svga_set_poll(svga);
@@ -1247,6 +1251,10 @@ svga_recalctimings(svga_t *svga)
else
svga->hdisp >>= 1;
}
svga->monitor->mon_interlace = 0;
if (!svga->override && svga->interlace)
svga->monitor->mon_interlace = 1;
}
static void

View File

@@ -332,6 +332,8 @@ video_prepare(void)
/* Do an inform on the default values, so that that there's some sane values initialized
even if the device init function does not do an inform of its own. */
video_inform_monitor(VIDEO_FLAG_TYPE_SPECIAL, &timing_default, i);
monitors[i].mon_interlace = 0;
}
}