OS自作入門 7日目、8日目
○7日目、8日目
FIFOとマウス制御
マウス制御と32ビットモード切替
▼FIFO処理については特に目新しいものはないので省略
▼PIC制御回路の設定
・キーボード制御回路
CPUに対して処理速度が遅いため、データ送信可能になるまで待つ必要がある。
・マウスの有効化命令
キーボード制御回路に0xd4コマンドを送るとマウスへデータ転送される。
転送設定がOKになるとCPUに0xfaを送信する。
▼マウス制御
■割り込み禁止中の割り込みは保持される?
▼32ビットモード設定関連
・割り込みの禁止
・使用メモリを1M以上に設定
・INSTRSET命令
→386以降のキーワードを利用するために変更
・プロテクトモードの設定(プロテクテッド・バーチャル・リアルモード)
→CR0レジスタの設定値を変更
プロテクトモードにすることによりGTDが有効になり、機械語の解釈も変わる。
リアルモードとプロテクトモードでは割り込み処理の設定方法も変わる。
▼アセンブラ
ALIGNB キリが良くなるまでDB0を入れる。指定したあらインに合わせて0を入れる。
JNZ jump if not zero
JZ jump if zero
SHR 右シフト演算