週邊界面程式設計 -- 週邊裝置探索篇


 

 

 

 

 

 

 

                              
             序
AG00001_.gif (4995 bytes)

 一切有為法
 如夢幻泡影
  如露亦如電
  應作如是觀

                       ∼金剛般若波羅密


綜觀本書內容AG00062_.gif (7566 bytes)

傳統個人電腦的硬體架構而言,主要包含了中央處理單元 (CPU)、記憶體 (RAM 和ROM), 以及各式各樣的控制晶片和週邊設備。為了能夠有效的控制及利用這些設備, 電腦業者提供了 BIOS (Basic Input Output System, 通常燒錄在 ROM 裡面) 和 DOS (Disk Operation System),以便使用者來操作電腦。本書介紹如何跳過 DOS 或 BIOS 層面, 而直接控制硬體;主要的理由, 便是 BIOS 並不完全支援 個人電腦所有的週邊設備或不能完全發揮其功能,因此學習如何擺脫 BIOS 和 DOS 的限制而自行設計週邊控制程式,對一個為個人電腦設計程式的程式師而言是非常重要的, 本書便提供了如此的一個學習環境。

書中介紹主系統中可以軟體規劃的控制晶片, 其中包括 PICPITRTCUPIDMAC, 除了詳細的解說外, 每個單元都有可執行的完整範例。另外常用的週邊設備, 包括 KeyboardVGA/HGAPrinterMouseRS232FloppyDisk/HardDisk, 都完整探索其界面原理以及伴隨完整的規劃程式, 讀者可將每個單元的程式重新編譯來執行測試, 也可利用 MAKEFILE 將其加到 C 的函式庫中, 作為日後設計應用程式時使用。

本書中亦包含了許多應用程式設計的內容, 其中包括不受鍵盤攔截限制的 TSR、EGA/VGA 的影像記憶體讀寫、中斷驅動的平行式與序列式通訊、鍵盤巨集程式與滑鼠界面的使用, 另外還有軟硬碟直接讀寫的應用不等, 這兒列出 INTRFACE.HUSERFACE.H 讓讀者先一睹為快。

                   <intrface.h>
                   <userface.h>

 

製作函式庫與執行檔

書所有程式的原始碼都收錄在隨書附贈的磁片, 為了節省磁片空間和避免病毒傳染, 所以不含目標檔和可執行檔, 但讀者可利用裡面的 MAKEFILE 很快的產生所有的目標檔與執行檔, 進而製作自己的函式庫。CC 表使用的編譯器, 筆者使用 Turbo C 或 Borland C++的 tcc/bcc, 測試結果均可正常執行, ASM、LINK 則指定組譯程式與鏈結程式, 筆者使用的分別是 tasm 和 tlink, PATH 指定原始程式所在的磁碟機代碼與目錄名稱, LIBPATH 則設定 C 的函式庫所在的目錄, 下面示範一些用法:

     ..\LIB> make intrface <- 產生 intrface 目錄下程式的目標檔並將
                                                 這些目標檔合為 user.lib
     ..\LIB> make cslib <- 將 user.lib 放進 LIBPATH 目錄下的 cs.lib
     ..\LIB> make watchdog <- 產生 watchdog.exe


                   <makefile>

電腦中斷機構 鍵盤控制界面 視訊顯像界面 電腦通訊界面 磁碟控制界面

Copyright © 1991. All rights reserved.
Publish: July 1991, 儒林圖書 SIM448n
Revised: Dec 1993. 儒林圖書 SIM2656
Updated: May 1998.

BS00622A.gif (2341 bytes) mailto:d4526011@csie.ntu.edu.tw