Repo

kjana00@gmail.com

older <-

2014-08-02 02:41:30

今朝はくもり。朝ごはんはトマトとソーセージ。パンが無いのに食べようとするまで気付かなかったのはなかなかに、あれ。さすがに物足りないわ。微妙に日が差してきたりはしてるけどくもりはくもり、っていう状況だとじっとり蒸して気持ち悪い。

昨日書き始めたのの特別な部分を書きしょう、の巻。前提条件が増えるだけではあるんだ。で、その条件っていうのが、センサがぶら下がってる IC がまともに動いてるっていう話で、これは別に判定した結果が異常でないことっていう話にしてある。ということで、まとめてこの判定だけやる関数を条件に足したらいい。

さすがに個別の判定をだらだら書き連ねるのは間抜けなんで、見るものの配列を用意して、っていうことになる。この配列のエントリを IC 毎に持つわけだけど、当然内容は IC 違いによる番号違い以外は一緒。ということで、適当に二重配列の内側になるマクロを書く。本当はこの内側のエントリ数を先に確定させたいから作る enum も同じマクロでどうにかしたいんだけど、可変引数マクロは使っちゃいけない規約だったようなということであきらめた。本当にエントリ数を数えるために enum 作ってるだけだから、多少間違えても数があってればいいんだけど、作るからには番号が当ってるべきだっていうのも確かなんだよね……

出来たものを加えてテストを拡充。最初に変化しないはずのテスト結果まで変わってたのは、最初に前提条件を逆にして組み込んでたからでした……異常があったらこっちやっておしまい、そうでなかったら真面目に判定っていう順に処理が並んでるのに、前提条件でフラグが立ってなかったら、ってしたらいかんよ。とりあえずさくさく動かしました、という感じでこっちはおしまい。

マイコン向けの開発環境について話が回ってきてたんでインストールして、コンパイラだけ使えるなっていうことでクロスコンパイルするようにしてみる。CC を書き換えるだけで一応いけるんだけど、依存関係ファイルを生成するのに gcc -E -MM を使ってたもんだからそこで引っ掛かったり。マイコン用のコンパイラはちゃんと -MM 使えるんだけど、吐き出す内容に "\" を含んだ Windows なパスが入ってるもんだから Cygwin の make は文句を言うわけです。ということで sed -e 's;\\;/;g' -e 's;\s*/$$; \\' な感じのフィルタをかまして何とかした。しばらく "$;" が make に展開されてるのに気付かないで sed が文句を言うのに悩んだりしたけど。マイコン用のコンパイラは "\" での行継続じゃなくて一行一エントリの依存関係を作るんで、sed '1s;^;$(<D)/;' で他のディレクトリのオブジェクトファイルの依存関係に相対パス付けてたのを sed 's;$@;$(<D)/$@;' に直したりもしてどうにか。当然実行は出来ないよねっていうのもあったんで、実行ファイル作るのとテストを実行するターゲットを分けたり、.d ファイルを make clean で消すの止めて後で .d だけ消す realclean なんてターゲットを足したり。

そんな感じで今日はおしまい。何やらこちらでイベントがあるようなのを後目に帰る。じっとりしてるんで晩ごはんはとり汁のそば。晩ごはん前にゴーダ食べてたのは気にしない方向。おいしいよね……そばに合う気は全然しないから合わせないけど。で、そんなだからだいぶお腹一杯なところに何か欲しくなったから、で買ってきておいた胡麻豆腐も食べたからぱんぱんに。

後は WWW 見たりゲームしたり。36 階まで降りてみても特に何も無いよ…… 38 階はランダムクエストだから、30 階レベルクエストをどうにかする気になるまではしばらくおとなしくするか。……ああ、森に行ってもいいんだな。シェロブが 32 階か。勝てるかっていうと……勝てなくもない、けど下手すると死ねる、か。

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12