Port 0x3da diagnostic bits now held static during blanking, fixes DOS 6.2/V hang.
This commit is contained in:
parent
e74519ea4e
commit
4f11821ee6
1 changed files with 4 additions and 1 deletions
|
|
@ -229,7 +229,10 @@ uint8_t svga_in(uint16_t addr, void *p)
|
||||||
return svga->gdcreg[svga->gdcaddr & 0xf];
|
return svga->gdcreg[svga->gdcaddr & 0xf];
|
||||||
case 0x3DA:
|
case 0x3DA:
|
||||||
svga->attrff = 0;
|
svga->attrff = 0;
|
||||||
svga->cgastat ^= 0x30;
|
if (svga->cgastat & 0x01)
|
||||||
|
svga->cgastat &= ~0x30;
|
||||||
|
else
|
||||||
|
svga->cgastat ^= 0x30;
|
||||||
return svga->cgastat;
|
return svga->cgastat;
|
||||||
}
|
}
|
||||||
// printf("Bad EGA read %04X %04X:%04X\n",addr,cs>>4,pc);
|
// printf("Bad EGA read %04X %04X:%04X\n",addr,cs>>4,pc);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue