INT 10H

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

INT 10hINT 10HINT 16BIOS中斷呼叫的第10H功能的簡寫, 在基於x86的電腦系統中屬於第17中斷向量BIOS通常在此建立了一個中斷處理程式提供了真實模式下的影片服務。此類服務包括設置顯示模式,字元和字串輸出,和基本圖形(在圖形模式下的讀取和寫入像素)功能。要使用這個功能的呼叫,在暫存器AH賦予子功能號,其它的暫存器賦予其它所需的參數,並用指令INT 10H呼叫。INT 10H的執行速度是相當緩慢的,所以很多程式都繞過這個BIOS常式而直接訪問顯示硬件。設置顯示模式並不經常使用,可以通過BIOS來實現,而一個遊戲在熒幕上繪製圖形,需要做得很快,所以直接訪問影像記憶體比用BIOS呼叫每個像素更適合。

支援功能列表[編輯]

功能 功能代碼 參數 返回
設置顯示模式 AH=00H AL=顯示模式 AL=顯示模式標誌/CRT控制模式位元組
設置文字方式游標 AH=01H CH=行掃描開始,CL=行掃描結束

通常一個字元單元有8個掃描行(0-7)。所以,CX=0607H是一個正常的游標,CX=0007H是一個完整塊游標。如果設置CH的第5位,這通常意味着「隱藏游標」,所以CX=2607H是一種無形游標。

有些顯示卡有16條掃描線(00H-0Fh)。

有些顯示卡不使用CH的第5位,對於這種情況,可以嘗試行掃描開始大於行掃描結束(如:CX=0706h) 。

設置游標位置 AH=02H BH=頁碼,DH=行,DL=列
取得游標位置和形狀 AH=03H BX=頁碼 AX=0,CH=行掃描開始,CL=行掃描結束,DH=行,DL=列
讀取光筆位置(VGA系統不工作) AH=04H AH=狀態(0=無觸發,1=觸發),BX=X像素,CH=Y像素,CL=像素行模式(0FH-10H),DH=字元Y,DL=字元X
選擇活動顯示頁 AH=05H AL=頁碼
向上捲動窗口 AH=06H AL=捲動的行(0=清除,被用於CH,CL,DH,DL),

BH=背景顏色和前景顏色,BH=43H,意義為背景顏色為紅色,前景顏色為青色。請參考 BIOS顏色屬性
CH=高行數,CL=左列數,DH=低行數,DL=右列數

向下捲動窗口 AH=07H 參考向上捲動
讀游標所在位置的字元和屬性 AH=08H BH=頁碼 AH=顏色,AL=字元
在當前游標位置寫字元和屬性 AH=09H AL=字元,BH=頁碼,BL=顏色,CX=多次列印字元
在游標位置寫入字元 AH=0AH AL=字元,BH=頁碼,CX=多次列印字元
設置背景/邊框顏色 AH=0BH,BH=00H BL=背景/邊框顏色(邊框顏色只能在文字模式設置)
設置調色盤 AH=0BH,BH=01H BL=調色盤ID(只使用於CGA,但現在的顯示卡都支援多個或所有模式。)
寫圖形像素 AH=0CH AL=顏色,BH=頁碼 CX=x,DX=y
讀圖形像素 AH=0DH BH=頁碼,CX=x,DX=y AL=顏色
電傳打字機輸出 AH=0EH AL=字元,BH=頁碼,BL=顏色(只適用於圖形模式)
取得當前顯示模式 AH=0FH AH=熒幕字元的列數
         AL=显示模式(参见功能00H中的说明)
         BH=页码
寫字串(EGA+,最低PC AT ) AH=13H AL=寫模式,BH=頁碼,BL=顏色,CX=字串長度,DH=行,DL=列,ES:BP=字串偏移量

參考[編輯]

參見[編輯]