Reverted Direct3D to 2048x2048 buffer and suppressed the EGA/(S)VGA overscan, if enabled, in 2048x modes, fixes Direct3D freezes;

Improved the BusLogic incoming mailbox code;
The BusLogic callback is now three-phases and outgoing mailbox interrupts are emulated correctly;
Fixed the CD-ROM command READ DISC INFORMATION (0x51), fixes NetBSD crashing 86Box with segmentation fault when using the AHA-154x;
Added the CD-ROM command PAUSE/RESUME ALT (0xC2).
This commit is contained in:
OBattler
2017-01-24 01:03:23 +01:00
parent bd28cc5e57
commit bc5ac4a699
21 changed files with 308 additions and 278 deletions

View File

@@ -1497,6 +1497,17 @@ void svga_doblit(int y1, int y2, int wx, int wy, svga_t *svga)
if (xsize<64) xsize=640;
if (ysize<32) ysize=200;
if (xsize > 2032)
{
x_add = 0;
y_add = 0;
suppress_overscan = 0;
}
else
{
suppress_overscan = 1;
}
updatewindowsize(xsize + x_add,ysize + y_add);
}
if (vid_resize)
@@ -1505,7 +1516,7 @@ void svga_doblit(int y1, int y2, int wx, int wy, svga_t *svga)
ysize = wy + 1;
}
if (enable_overscan)
if (enable_overscan && !suppress_overscan)
{
if ((wx >= 160) && ((wy + 1) >= 120))
{