mirror of
https://github.com/joncampbell123/dosbox-x.git
synced 2025-10-14 02:17:36 +08:00
fix VGA port 3DAh to always set "vertical retrace" during vertical
retrace even if not blanking. some DOS demos program custom VGA modes (incorrectly) that end up putting vertical retrace during active display. "Monolith" demo custom mode (320x590) works again.
This commit is contained in:
@@ -43,10 +43,6 @@ Bitu vga_read_p3da(Bitu port,Bitu iolen) {
|
||||
|
||||
if (timeInFrame >= vga.draw.delay.vdend) {
|
||||
retval |= 1; // vertical blanking
|
||||
if (timeInFrame >= vga.draw.delay.vrstart &&
|
||||
timeInFrame <= vga.draw.delay.vrend) {
|
||||
retval |= 8; // vertical retrace
|
||||
}
|
||||
} else {
|
||||
double timeInLine=fmod(timeInFrame,vga.draw.delay.htotal);
|
||||
if (timeInLine >= vga.draw.delay.hblkstart &&
|
||||
@@ -55,6 +51,11 @@ Bitu vga_read_p3da(Bitu port,Bitu iolen) {
|
||||
}
|
||||
}
|
||||
|
||||
if (timeInFrame >= vga.draw.delay.vrstart &&
|
||||
timeInFrame <= vga.draw.delay.vrend) {
|
||||
retval |= 8; // vertical retrace
|
||||
}
|
||||
|
||||
vsync_poll_debug_notify();
|
||||
return retval;
|
||||
}
|
||||
|
Reference in New Issue
Block a user