Linuxカーネルコミッタの夢を見る

10年以内にLinuxカーネルにコミットしたい(2020/10/1).無理だって?まあ見てなさい.

低レイヤー学習記【8日目】

取り組んだ内容

・OS自作入門,pp.157-165

取り組んだ内容の詳細

・マウスから送られてくるデータを解読した,具体的には最初に送られてくるデータ(0xfa)を読み捨てて以降のデータを3つのフェーズに分けて受信し,それぞれをバッファに保存する.3つのデータとはボタン,x座標移動量,y座標移動量である.

・3つのデータが揃った時点でその内容を画面描画した

・画面描画する直前にフェーズ記憶変数を1に設定することで再び3つのフェーズに分けてマウス信号を受け取ることができる

・マウス信号の1バイト目が取りうる値は範囲が限られているため,これをチェックする機構をビット演算によって実現

・マウス信号をもとにマウスカーソルを再描画することでマウスカーソルの移動を実現

f:id:oirom0528:20201010195147p:plain

マウスカーソルが動いたよ

所感

やっとマウスカーソルが動きました!やはり目に見えて変化が現れると達成感がありますね.ここに来るまで割り込みテーブルやバッファ,こまごまとした関数の設定など変化が目に見えない部分ばかりいじっていたのでかなり嬉しいです(笑).