From 49579b425eebad84f4e6e947527bd659e15140da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Strohh=C3=A4cker?= Date: Sat, 12 Nov 2005 14:17:36 +0000 Subject: [PATCH] enable all planes only for EGA Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2375 --- src/ints/int10_char.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/ints/int10_char.cpp b/src/ints/int10_char.cpp index 9f478eb8..9df3c0ca 100644 --- a/src/ints/int10_char.cpp +++ b/src/ints/int10_char.cpp @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $Id: int10_char.cpp,v 1.40 2005-11-10 20:24:55 c2woody Exp $ */ +/* $Id: int10_char.cpp,v 1.41 2005-11-12 14:17:36 c2woody Exp $ */ /* Character displaying moving functions */ @@ -493,7 +493,12 @@ void WriteChar(Bit16u col,Bit16u row,Bit8u page,Bit8u chr,Bit8u attr,bool useatt x=8*col; y=cheight*row;Bit8u xor_mask=(CurMode->type == M_VGA) ? 0x0 : 0x80; //TODO Check for out of bounds - IO_Write(0x3c4,0x2);IO_Write(0x3c5,0xf); /* enable all planes */ + if (CurMode->type==M_EGA16) { + /* enable all planes for EGA modes (Ultima 1 colour bug) */ + /* might be put into INT10_PutPixel but different vga bios + implementations have different opinions about this */ + IO_Write(0x3c4,0x2);IO_Write(0x3c5,0xf); + } for (Bit8u h=0;h