diff --git a/src/video/vid_ati18800.c b/src/video/vid_ati18800.c
index d31561816..d879ab937 100644
--- a/src/video/vid_ati18800.c
+++ b/src/video/vid_ati18800.c
@@ -8,7 +8,7 @@
*
* ATI 18800 emulation (VGA Edge-16)
*
- * Version: @(#)vid_ati18800.c 1.0.8 2018/03/18
+ * Version: @(#)vid_ati18800.c 1.0.9 2018/03/24
*
* Authors: Sarah Walker,
* Miran Grca,
@@ -150,39 +150,6 @@ static uint8_t ati18800_in(uint16_t addr, void *p)
case 0x3D5:
temp = svga->crtc[svga->crtcreg];
break;
- case 0x3DA:
- svga->attrff = 0;
- svga->attrff = 0;
- svga->cgastat &= ~0x30;
- /* copy color diagnostic info from the overscan color register */
- switch (svga->attrregs[0x12] & 0x30)
- {
- case 0x00: /* P0 and P2 */
- if (svga->attrregs[0x11] & 0x01)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x04)
- svga->cgastat |= 0x20;
- break;
- case 0x10: /* P4 and P5 */
- if (svga->attrregs[0x11] & 0x10)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x20)
- svga->cgastat |= 0x20;
- break;
- case 0x20: /* P1 and P3 */
- if (svga->attrregs[0x11] & 0x02)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x08)
- svga->cgastat |= 0x20;
- break;
- case 0x30: /* P6 and P7 */
- if (svga->attrregs[0x11] & 0x40)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x80)
- svga->cgastat |= 0x20;
- break;
- }
- return svga->cgastat;
default:
temp = svga_in(addr, svga);
break;
diff --git a/src/video/vid_ati28800.c b/src/video/vid_ati28800.c
index a85acab9f..9868213d9 100644
--- a/src/video/vid_ati28800.c
+++ b/src/video/vid_ati28800.c
@@ -8,7 +8,7 @@
*
* ATI 28800 emulation (VGA Charger and Korean VGA)
*
- * Version: @(#)vid_ati28800.c 1.0.15 2018/03/20
+ * Version: @(#)vid_ati28800.c 1.0.16 2018/03/24
*
* Authors: Sarah Walker,
* Miran Grca,
@@ -257,39 +257,6 @@ static uint8_t ati28800_in(uint16_t addr, void *p)
case 0x3D5:
temp = svga->crtc[svga->crtcreg];
break;
- case 0x3DA:
- svga->attrff = 0;
- svga->attrff = 0;
- svga->cgastat &= ~0x30;
- /* copy color diagnostic info from the overscan color register */
- switch (svga->attrregs[0x12] & 0x30)
- {
- case 0x00: /* P0 and P2 */
- if (svga->attrregs[0x11] & 0x01)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x04)
- svga->cgastat |= 0x20;
- break;
- case 0x10: /* P4 and P5 */
- if (svga->attrregs[0x11] & 0x10)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x20)
- svga->cgastat |= 0x20;
- break;
- case 0x20: /* P1 and P3 */
- if (svga->attrregs[0x11] & 0x02)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x08)
- svga->cgastat |= 0x20;
- break;
- case 0x30: /* P6 and P7 */
- if (svga->attrregs[0x11] & 0x40)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x80)
- svga->cgastat |= 0x20;
- break;
- }
- return svga->cgastat;
default:
temp = svga_in(addr, svga);
break;
diff --git a/src/video/vid_ati_mach64.c b/src/video/vid_ati_mach64.c
index b8f414ad3..b6aa66f97 100644
--- a/src/video/vid_ati_mach64.c
+++ b/src/video/vid_ati_mach64.c
@@ -8,7 +8,7 @@
*
* ATi Mach64 graphics card emulation.
*
- * Version: @(#)vid_ati_mach64.c 1.0.17 2018/03/18
+ * Version: @(#)vid_ati_mach64.c 1.0.18 2018/03/24
*
* Authors: Sarah Walker,
* Miran Grca,
@@ -429,39 +429,6 @@ uint8_t mach64_in(uint16_t addr, void *p)
if (svga->crtcreg > 0x18)
return 0xff;
return svga->crtc[svga->crtcreg];
- case 0x3DA:
- svga->attrff = 0;
- svga->attrff = 0;
- svga->cgastat &= ~0x30;
- /* copy color diagnostic info from the overscan color register */
- switch (svga->attrregs[0x12] & 0x30)
- {
- case 0x00: /* P0 and P2 */
- if (svga->attrregs[0x11] & 0x01)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x04)
- svga->cgastat |= 0x20;
- break;
- case 0x10: /* P4 and P5 */
- if (svga->attrregs[0x11] & 0x10)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x20)
- svga->cgastat |= 0x20;
- break;
- case 0x20: /* P1 and P3 */
- if (svga->attrregs[0x11] & 0x02)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x08)
- svga->cgastat |= 0x20;
- break;
- case 0x30: /* P6 and P7 */
- if (svga->attrregs[0x11] & 0x40)
- svga->cgastat |= 0x10;
- if (svga->attrregs[0x11] & 0x80)
- svga->cgastat |= 0x20;
- break;
- }
- return svga->cgastat;
}
return svga_in(addr, svga);
}
diff --git a/src/video/vid_oak_oti.c b/src/video/vid_oak_oti.c
index 15781aa32..c3d2ff522 100644
--- a/src/video/vid_oak_oti.c
+++ b/src/video/vid_oak_oti.c
@@ -8,7 +8,7 @@
*
* Oak OTI037C/67/077 emulation.
*
- * Version: @(#)vid_oak_oti.c 1.0.9 2018/03/18
+ * Version: @(#)vid_oak_oti.c 1.0.10 2018/03/24
*
* Authors: Sarah Walker,
* Miran Grca,
@@ -157,6 +157,40 @@ oti_in(uint16_t addr, void *p)
temp = svga->crtc[svga->crtcreg & 31];
break;
+ case 0x3DA:
+ svga->attrff = 0;
+ svga->attrff = 0;
+ svga->cgastat &= ~0x30;
+ /* copy color diagnostic info from the overscan color register */
+ switch (svga->attrregs[0x12] & 0x30)
+ {
+ case 0x00: /* P0 and P2 */
+ if (svga->attrregs[0x11] & 0x01)
+ svga->cgastat |= 0x10;
+ if (svga->attrregs[0x11] & 0x04)
+ svga->cgastat |= 0x20;
+ break;
+ case 0x10: /* P4 and P5 */
+ if (svga->attrregs[0x11] & 0x10)
+ svga->cgastat |= 0x10;
+ if (svga->attrregs[0x11] & 0x20)
+ svga->cgastat |= 0x20;
+ break;
+ case 0x20: /* P1 and P3 */
+ if (svga->attrregs[0x11] & 0x02)
+ svga->cgastat |= 0x10;
+ if (svga->attrregs[0x11] & 0x08)
+ svga->cgastat |= 0x20;
+ break;
+ case 0x30: /* P6 and P7 */
+ if (svga->attrregs[0x11] & 0x40)
+ svga->cgastat |= 0x10;
+ if (svga->attrregs[0x11] & 0x80)
+ svga->cgastat |= 0x20;
+ break;
+ }
+ return svga->cgastat;
+
case 0x3DE:
temp = oti->index | (oti->chip_id << 5);
break;