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 右シフト演算