夜空日和 [出張版]

星を見上げながら、今日を語ってみようか

 

スポンサーサイト


Category: スポンサー広告   Tags: ---
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

低級なほど高級


Category: 日々徒然   Tags: ---
吹雪の中、帰宅。
鏡の中の自分を見てみると・・・

どこの遭難者だ、おい?!

顔は青白く、髭(短め)は白くなり、極めつけの人間樹氷
春先の格好で歩いてりゃ、そりゃ死にそうになるわな。
・・・炬燵に入っている今でさえ、まだ寒いです。

あ、みかんがきれてる・・・


/*以下、駄文*/

Fujixの課題でSD弄ってるけど、どうやら結果はターミナルに表示しなきゃあかんらしい。
おいおい、頑張ってLCD (16文字×2行) に表示していた俺が馬鹿じゃないか!
KPITのgccを使ってみると、printfが全く使えない。
リファレンスを見てみると、どうやらターミナル出力は環境依存のため、それを書けと。
詳細を見てみると・・・
 printf とか -> _write() および putc_SCI()
 fgets とか -> _read() および getc_SCI()
これらを実装しなきゃ駄目みたいです。
extern してるんだから、リンカの時点でエラー吐いておくれよ・・・

SCI (serial communication interface) は、文字通り1文字通信のインターフェイス。
こいつでターミナルと通信しているから、まずは SCI の設定が必要。
その次に、SCI を使って1文字入出力作って、あとは複数文字対応にすればOK。
順番としては、initialize -> putc/getc -> read/write の順に作成する。

たぶん、一般的な学生はオカジが作った sci.c / newlib.c とか使ってると思う。
あれ、無駄な時間は掛かるけど、結構マジメに作ってあった。
ただ、一部思惑通りの動作がしなかったり、読みにくかったので、全部コーディングし直した。
あと、KPIT の printf が重過ぎる&バッファリングが糞なので、これもコーディング。
また、fgets の挙動もおかしいので、ついでにコーディング。

そんなことをやって完成したプログラムが、tex で 22頁 になりましたとさw
( ただし、記述スタイルをC#風にしてるから、無駄行が多い )

格好としては、簡易型シェルになってる。
ls でファイルが見れて、view hoge で中身表示とか。
他にも追加機能をどんどん入れたいけど、時間が足りないよ!

API とかドライバとか、こういう低級な物を作るのって楽しい。
いかに効率良く、いかに汎用性を求め、いかに使いやすくするか。
追い求めれば追い求めるほど、楽しさと苦しさの深みに嵌ってしまう。
そして "標準" と "慣れ" の怖さも同時に分かってくる。

いやはや・・・世界は奥が深いです。 (見てる世界が狭いよ *笑*)
スポンサーサイト


Comments

Leave a Comment



10 2017
SUN MON TUE WED THU FRI SAT
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

09

11


 
プロフィール

ひでたそ

Author:ひでたそ
Comment:
現役大学生で天文好き。
今日もどこかで、上を見ながら歩いています。

 
 
 
最新トラックバック
 
 
検索フォーム
 
 
 
ブロとも申請フォーム
 
QRコード
QRコード
 

Archive   RSS   Login

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。