C言語で0から作るOSを開発について説明していきます。このシリーズではカーネルの開発における、そのドライバーについて説明しています。
今回はキーボードドライバーについて見ていきます。キーボードの制御はキーボードコントローラーとキーボードエンコーダーをIN命令/OUT命令で操作することで制御することができます。
【注意】本書は『0から作るOS開発』のVol.ナンバリングのタイトルではありません。Vol.ナンバリング以外のタイトルはカーネル編以降どのタイミングでも導入することができます。
[目次]
本書について
キーボードの成り立ち
現在のキーボードへ
キーレイアウト
キーボードの種類
キーボードの構成
キーボードエンコーダー
キーボードコネクター
スキャンコード
キーボードコントローラー
キーボードドライバー
8042キーボードマイクロコントローラー
キーボードコントローラーのポートアドレス
キーボードコントローラのステータスレジスター
キーボードコントローラーのレジスターにアクセスする関数を作成する
キーボードコントローラーのステータスレジスターを読み込む関数
キーボードコントローラーのコマンドを書き込む関数
キーボードエンコーダーからデータを読み込む関数
キーボードエンコーダーにコマンドを書き込む関数
キーボードエンコーダーの制御コマンド
キーボードエンコーダーの制御
キーボードエンコーダーのリターンコード
キーボードコントローラーの制御コマンド
制御コマンドバイト、インプットポート、アウトプットポート
制御コマンドバイト
インプットポート
アウトプットポート
キーボードコントローラーの制御
セルフテスト 制御コマンド0xAA
キーボード無効 制御コマンド0xAD
キーボード無効 制御コマンド0xAE
スキャンコードの読み取り
キーボードの初期化と割り込み
キーボードドライバの初期化
キーボードの割り込み
PICの設定
キーボードのIDTを設定する
付録(スキャンコード一覧)
スキャンコードセット
スキャンコードセット1
ACPI電源管理キー
スキャンコードセット2
ACPI電源管理キー
スキャンコードセット3
This site is safe
You are at a security, SSL-enabled, site. All our eBooks sources are constantly verified.