Port 0x3da diagnostic bits now held static during blanking, fixes DOS 6.2/V hang.

This commit is contained in:
TomW 2014-07-06 21:40:28 +01:00
commit 4f11821ee6

View file

@ -229,7 +229,10 @@ uint8_t svga_in(uint16_t addr, void *p)
return svga->gdcreg[svga->gdcaddr & 0xf];
case 0x3DA:
svga->attrff = 0;
svga->cgastat ^= 0x30;
if (svga->cgastat & 0x01)
svga->cgastat &= ~0x30;
else
svga->cgastat ^= 0x30;
return svga->cgastat;
}
// printf("Bad EGA read %04X %04X:%04X\n",addr,cs>>4,pc);