2010年9月19日 星期日

915resolution 解決 Intel 舊driver 寬螢幕顯示問題

最近安裝 CentOS 5.5, 不過螢幕解析度始終為 1280x1024, 無法支援寬螢幕 1680x1050解析度, 經過上網查詢, CentOS的driver竟然是滿舊的版本, 加上我是945GME舊晶片, 造成無法支援寬螢幕或更高的解析度, 幸好有一個套件 915resolution 針對舊版 Intel driver 可以藉由修改記憶體儲存的解析度內容, 來達到非標準顯示

1. 首先,先去官網下載最新915resolution並進入文字模式:

2. 解開安裝:
# tar xvf 915resolution-0.5.3.tar.gz
# cd 915resolution-0.5.3
# make clean
# make
# make install

3. 查詢解析度內容:
# 915resolution -l

這時出現一些訊息~~
----------------------------------------------------
Intel 800/900 Series VBIOS Hack : version 0.5.3

Intel chipset detected.  However, 915resolution was unable to determine the chipset type.
Chipset Id: 27ac8086
Please report this problem to stomljen@yahoo.com
----------------------------------------------------

發現 Chipset Id: 27ac8086 找不到 = =..可能是945GME關係, 後來上網查了一下, 可以利用修改code解決這個問題:
# vim 915resolution.c
----------------------------------------------------
chipset_type get_chipset(cardinal id) {
    chipset_type type;
                :
    case 0x27a08086:
        type = CT_945GM;
        break;

    case 0x27ac8086:        添加藍色這段
        type = CT_945GM;
        break;
                 :
                 :
}
----------------------------------------------------
然後重新步驟2安裝

# 915resolution -l
可以看到解析度內容~~
----------------------------------------------------
Intel 800/900 Series VBIOS Hack : version 0.5.3

Chipset: 945GM
BIOS: TYPE 1
Mode Table Offset: $C0000 + $269
Mode Table Entries: 36

Mode 30 : 640x480, 8 bits/pixel
Mode 32 : 800x600, 8 bits/pixel
Mode 34 : 1024x768, 8 bits/pixel
Mode 38 : 1280x1024, 8 bits/pixel
Mode 3a : 1600x1200, 8 bits/pixel
Mode 3c : 1920x1440, 8 bits/pixel
Mode 41 : 640x480, 16 bits/pixel
Mode 43 : 800x600, 16 bits/pixel
Mode 45 : 1024x768, 16 bits/pixel
Mode 49 : 1280x1024, 16 bits/pixel
Mode 4b : 1600x1200, 16 bits/pixel
Mode 4d : 1920x1440, 16 bits/pixel
Mode 50 : 640x480, 32 bits/pixel
Mode 52 : 800x600, 32 bits/pixel
Mode 54 : 1024x768, 32 bits/pixel
Mode 58 : 1280x1024, 32 bits/pixel
Mode 5a : 1600x1200, 32 bits/pixel
Mode 5c : 1920x1440, 32 bits/pixel
----------------------------------------------------

4. 修改解析度:
# 915resolution 49 1280 1024 24
# 915resolution 4b 1680 1050 24
# startx


如果更改成功, 將上面command加入開機執行
5. 加入開機執行:
# vim /etc/rc.d/rc.local
最後面添加這二行~~
----------------------------------------------------
915resolution 49 1280 1024 24
915resolution 4b 1680 1050 24
----------------------------------------------------
# reboot
收工 XD