mirror of
https://github.com/joncampbell123/dosbox-x.git
synced 2025-05-09 03:41:10 +08:00
INT 10h: 200-line mode ANYTHING, including 200-line text mode, needs the AC and DAC programmed CGA RGBI style, not EGA 64-color style
This commit is contained in:
parent
166102731d
commit
d11bceda8c
@ -10,6 +10,9 @@ Next
|
||||
(joncampbell123).
|
||||
- INT 10: Fix "load font" functions to correctly recompute video
|
||||
display end for machine=vgaonly and machine=ega. (joncampbell123).
|
||||
- INT 10: Like any other 200-line 16-color graphics mode, 200-line
|
||||
VGA text mode needs to program the AC and VGA palette using the
|
||||
CGA RGBI-type palette, not the EGA 64-color type palette. (joncampbell123).
|
||||
|
||||
2024.12.04
|
||||
- Arrange memory device allocation so that it is possible to allocate
|
||||
|
@ -2043,6 +2043,11 @@ att_text16:
|
||||
att_data[i+6]=0x00;
|
||||
att_data[i+7]=0x00;
|
||||
}
|
||||
} else if (IS_EGAVGA_ARCH && CurMode->sheight == 200) {
|
||||
for (uint8_t ct=0;ct<8;ct++) {
|
||||
att_data[ct]=ct;
|
||||
att_data[ct+8]=ct+0x10;
|
||||
}
|
||||
} else {
|
||||
for (uint8_t ct=0;ct<8;ct++) {
|
||||
att_data[ct]=ct;
|
||||
@ -2190,6 +2195,15 @@ att_text16:
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
else if (CurMode->sheight == 200) {
|
||||
/* 200-line text modes need the CGA RGBI type palette, same as 200-line EGA 16-color */
|
||||
for (i=0;i<64;i++) {
|
||||
IO_Write(0x3c9,ega_palette[i][0]);
|
||||
IO_Write(0x3c9,ega_palette[i][1]);
|
||||
IO_Write(0x3c9,ega_palette[i][2]);
|
||||
}
|
||||
break;
|
||||
} //FALLTHROUGH!!!!
|
||||
case M_LIN4: //Added for CAD Software
|
||||
dac_text16:
|
||||
|
Loading…
x
Reference in New Issue
Block a user