summaryrefslogtreecommitdiff
path: root/src/ast_mode.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ast_mode.c')
-rw-r--r--src/ast_mode.c22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/ast_mode.c b/src/ast_mode.c
index 776ac39..624c465 100644
--- a/src/ast_mode.c
+++ b/src/ast_mode.c
@@ -130,7 +130,7 @@ VBIOS_STDTABLE_STRUCT StdTable[] = {
};
VBIOS_ENHTABLE_STRUCT Res640x480Table[] = {
- { 800, 640, 8, 96, 525, 480, 2, 2, VCLK28_322, /* 60Hz */
+ { 800, 640, 8, 96, 525, 480, 2, 2, VCLK25_175, /* 60Hz */
(SyncNN | HBorder | VBorder | Charx8Dot), 60, 1, 0x2E },
{ 832, 640, 16, 40, 520, 480, 1, 3, VCLK31_5, /* 72Hz */
(SyncNN | HBorder | VBorder | Charx8Dot), 72, 2, 0x2E },
@@ -167,7 +167,7 @@ VBIOS_ENHTABLE_STRUCT Res1024x768Table[] = {
{1312, 1024, 16, 96, 800, 768, 1, 3, VCLK78_75, /* 75Hz */
(SyncPP | Charx8Dot), 75, 3, 0x31 },
{1376, 1024, 48, 96, 808, 768, 1, 3, VCLK94_5, /* 85Hz */
- (SyncPP | Charx8Dot), 85, 4, 0x31 },
+ (SyncPP | Charx8Dot), 84, 4, 0x31 },
{1376, 1024, 48, 96, 808, 768, 1, 3, VCLK94_5, /* end */
(SyncPP | Charx8Dot), 0xFF, 4, 0x31 },
};
@@ -187,7 +187,14 @@ VBIOS_ENHTABLE_STRUCT Res1600x1200Table[] = {
{2160, 1600, 64, 192, 1250, 1200, 1, 3, VCLK162, /* 60Hz */
(SyncPP | Charx8Dot), 60, 1, 0x33 },
{2160, 1600, 64, 192, 1250, 1200, 1, 3, VCLK162, /* end */
- (SyncPP | Charx8Dot), 60, 1, 0x33 },
+ (SyncPP | Charx8Dot), 0xFF, 1, 0x33 },
+};
+
+VBIOS_ENHTABLE_STRUCT Res1920x1200Table[] = {
+ {2592, 1920,136, 200, 1245, 1200, 3, 6, VCLK193_25, /* 60Hz */
+ (SyncPP | Charx8Dot), 60, 1, 0x33 },
+ {2592, 1920,136, 200, 1245, 1200, 3, 6, VCLK193_25, /* end */
+ (SyncPP | Charx8Dot), 0xFF, 1, 0x33 },
};
VBIOS_DCLK_INFO DCLKTable [] = {
@@ -207,6 +214,7 @@ VBIOS_DCLK_INFO DCLKTable [] = {
{0x85, 0x24, 0x00}, /* 0D: VCLK135 */
{0x67, 0x22, 0x00}, /* 0E: VCLK157_5 */
{0x6A, 0x22, 0x00}, /* 0F: VCLK162 */
+ {0x61, 0x2C, 0x81}, /* 10: VCLK193_25 */
};
VBIOS_DAC_INFO DAC_TEXT[] = {
@@ -423,8 +431,10 @@ Bool bGetAST1000VGAModeInfo(ScrnInfoPtr pScrn, DisplayModePtr mode, PVBIOS_MODE_
break;
case 1600:
pVGAModeInfo->pEnhTableEntry = (PVBIOS_ENHTABLE_STRUCT) &Res1600x1200Table[ulRefreshRateIndex];
- break;
- default:
+ break;
+ case 1920:
+ pVGAModeInfo->pEnhTableEntry = (PVBIOS_ENHTABLE_STRUCT) &Res1920x1200Table[ulRefreshRateIndex];
+ break; default:
return (FALSE);
}
@@ -633,7 +643,7 @@ void vSetDCLKReg(ScrnInfoPtr pScrn, DisplayModePtr mode, PVBIOS_MODE_INFO pVGAMo
SetIndexRegMask(CRTC_PORT,0xC0, 0x00, pDCLKPtr->Param1);
SetIndexRegMask(CRTC_PORT,0xC1, 0x00, pDCLKPtr->Param2);
- SetIndexRegMask(CRTC_PORT,0xBB, 0xCF, ((pDCLKPtr->Param3 & 0x03) << 4));
+ SetIndexRegMask(CRTC_PORT,0xBB, 0x0F, (pDCLKPtr->Param3 & 0x80) | ((pDCLKPtr->Param3 & 0x03) << 4) );
}