根據 ref 1 改寫成 gas at&t 的版本, 在進入保護模式後, 不經由 bios call 來切換到 vga 繪圖模式, 直接讀寫 vga register。
右圖是在真實機器 eeepc 上測試的結果 (透過軟碟片), 在真實模式下測試, 保護模式因為有些問題 (kernel loader 無法正常載入 p_kernel.elf,
在保護模式定址的部份稍微有點改寫, 因為和真實模式的定址方式不同, 其他大概就都是 tasm 與 gas at&t 語法的轉換, 經過這一年來的磨練, 我已經對 at&t 語法有了一點熟悉度, 改起來已經不像第一次那麼痛苦了。
目前還不了解程式內容, 先求能動再來看懂程式碼。進入繪圖模式後就可以好好的來練習 GUI 程式的設計, 沒有 library, bios 幫我完成的黑箱程式碼, 完全靠自己的程式那種感覺真好, 雖然是小到不行的程式, 但那種真實感真的很實在。
程式的 vga register read/write 我還不清楚, 應該會對照著 vga/super vga 技術手冊這本書來研究, vga 還真不是普通的複雜。
沒有留言:
張貼留言
使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。
我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。