設置 | 登錄 | 註冊

目前共有5篇帖子。

啥時候有人能把BasicDisplay.sys移植下來,就能全面支持新顯卡亮機(僅僅是亮機,不支持硬體加速)

1樓 巨大八爪鱼 2026-1-16 12:54

Backporting the Microsoft Basic Display Adapter driver from Windows 8 Build 7963 to Windows 7

https://forums.mydigitallife.net/threads/backporting-the-microsoft-basic-display-adapter-driver-from-windows-8-build-7963-to-windows-7.86144/


Installing Windows 7 on the pure UEFI systems without CSM

https://forums.mydigitallife.net/threads/installing-windows-7-on-the-pure-uefi-systems-without-csm.80876/

2樓 巨大八爪鱼 2026-1-16 12:55

這兩個帖子,特別是後一個,算是對驅動層面怎麼顯示的科普

很值得研究

巨大八爪鱼CCTV.com 12:10:06
KB968730能使64位xpsp2的ie6支持sha256的https證書 如果只是想進桌面,不開aero,能有辦法不
@KB968730能使64位xpsp2的ie6支持sha256的https證書 見我說的上面的,原理就是利用GOP協議

CCTV.com 12:10:26
但是目前還沒有人做到

CCTV.com 12:11:04
我試著做過,最關鍵的那個Present函數(相當於GOP裡面的Blt)沒有被調用,黑屏。

CCTV.com 12:11:32
MDL論壇有討論,大家可以群策群力一下

CCTV.com 12:12:05
如果把win8的dxgkrnl.sys移植下來,則BasicDisplay就能用了,全品牌亮機

Canon~控 12:17:06
flashbootpro應該就可以直接進桌面

Canon~控 12:17:48
還沒遇到過不行的機器

CCTV.com 12:18:08
這個方法可以試,模擬win8的顯示方法。我有一兩個機器用它可以進入安全模式。

Canon~控 12:19:59
win8的dx移植太難了,函數缺失太多了

CCTV.com 12:22:01
除了IAT,還擔心用戶模式一堆d3d…和win32k.sys和它的匹配問題

CCTV.com 12:22:26
但是單獨加支持BasicDisplay的模塊,可行性也不高,代碼量很大

562409920 12:23:54
要是win8支持dx12  那我還真不換win10了

Canon~控 12:23:55
d3d應該還行,dx版本支持上,win7比win8/8.1高

Canon~控 12:24:09
就怕wddm版本卡

CCTV.com 12:25:47
win7是1.1,win8好像是1.2

CCTV.com 12:26:03
這麼說用戶模式肯定還是d3d11

562409920 12:30:25
win8.1應該是支持dx11.2的吧?

無天 12:39:30
DX12子版本區別還是不小

無天 12:39:53
單純針對獨顯基本要求來講

562409920 12:40:09
20系和6000系才完整支持dx12

無天 12:40:20
是這個意思

無天 12:40:36
所以這點來講win8。。

Canon~控 12:45:41
win7雖然支持dx12,但依賴遊戲廠商支持


3樓 巨大八爪鱼 2026-1-16 12:56

basicdisplay值得繼續研究,有意思

顯示這塊,有VGA仲裁、VGA資源、INT10虛擬等,既複雜又有趣

4樓 巨大八爪鱼 2026-1-16 13:12
CCTV.com 12:56:01
basicdisplay還有一定可能,微軟有一個KMDOD的源碼

CCTV.com 12:56:18
再結合XP源碼里對VGA的處理,有可能改造出來

 KB968730能使64位xpsp2的ie6支持sha256的https證書 12:58:12
int10虛擬是uefiseven已經做了的

CCTV.com 13:00:44
這個我分析過,我認為:
1.它的INT10隻是避免hal.dll虛擬機卡死
2.它不能實現真實INT10的功能(如寫顯卡埠)(真實INT10是顯卡VBIOS初始化的)
3.它的入口處理有缺陷,填好的中斷向量可能被作業系統覆蓋
我的修改版是針對上面第3個問題,把第0頁內存標記為EFI_RUNTIME_SERVICES使用的,防止作業系統回收。

CCTV.com 13:02:54
關於第1點,跟蹤一下hal.dll的x86BiosCall函數就能了解。對於關閉CSM而不會卡死的情形,是因為hal.dll虛擬機遇到無效指令會跳出。而卡死的情形,是剛好INT10指向的隨機位置的內存形成的16位指令,會產生死循環(比如完整執行完一個0x10000長度又回到原點)。

CCTV.com 13:11:19
flashboot為什麼能顯示,是它把內核寫VGA的操作統統換成寫GOP幀緩衝區的操作,由於GOP協議是UEFI OPROM初始化的,BIOS階段顯示正常,只要不作改動,在作業系統階段依然正常。

CCTV.com 13:11:35
規避了VBIOS未加載的問題。

內容轉換:

回覆帖子
內容:
用戶名: 您目前是匿名發表。
驗證碼:
看不清?換一張