2016年7月7日 星期四

x86 電腦研究心得

看 8086tiny 這專案剛看會給人誤會,以為要模擬PC X86模擬器不會是太複雜的事情,再追究下去,會發現這專案用了很多相當聰明的方式簡化了所包含的CODE數量,但簡化的道理卻因為對硬體沒有夠詳細的了解,也不知所以然來,於是放棄了以這專案為學習的開始,改以 V86 https://github.com/copy/v86 這款js pc的模擬器為學習對象,完整度可以執行到win98不是問題,重點是很紮實地去跑了system bios跟vga bios,追著這專案跑,一跑到VGA那塊馬上發現自己的無知,原來電腦VGA顯卡還是有很多學問,很多對應port的Register各自有各自的功能,然後記憶體排列的原理和規則等等,要搞懂也不是那麼簡單,像這種東西在早期有很多相關的書或是資料,但現在可以找到的說明越來越少,能找到的多數是英文,但解釋的也未必很清楚

http://wiki.osdev.org/VGA_Hardware
這篇有很多vga卡 port的作用和記憶體屬性規則在各種顯示模式下的說明

很多東西還得再細看和實際demo測試....不是說那麼好懂.

沒有留言:

張貼留言