Repo

kjana00@gmail.com

older <-

2012-02-25 02:04:23

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。ちょっと風があるのが難だけど、まあ、日が差してるのはいいよねっていう感じ。風さえ遮れればあったかい。遮れれば。

サブマイコンのプログラムがちょっと更新されてるから書き換えて長時間動作の実験をやりつつ、あんまり暇を持て余しててもしょうがないんでコードの修正に手を付けてみる。機能的なところはもう書いたとか、まだ仕様が決まってないとかでやることもないんだけど、そういうのを置いといても暇があったら書き直したいなと思ってたところはあるんで。そういうのの中でも影響範囲が狭そうなところで、定数な設定部分と書き換えられる状態部分が混在してる構造体の static な配列を、const なところとそうでないところに分割してやろうという話。それで RAM 使用量が結構減ることだし。

タイマーでそういうのをやってたところはまあ簡単。本当に、ただ分割した上で参照するところも直しただけ。まとまってると適当に timer_t *t = timer_list とかで t->count = t->init なんてやってられたんだけど、分割するとどうもポインタ二つループ内で更新するっていうのをそのうち忘れそうだと普通に配列の参照に直したりして。アドレス計算の重複については最適化に期待。これはこれで、くだくだしい名前を何度も書くことになるのが気に喰わなくはあるんだけど……それでマクロ導入して、とかやってると無駄に大掛り過ぎるかな、と。

外部機器との通信周りの方はもうちょっと大事に。そうやって分割してやるとばらばらに設定値だの何だのをあちこちで定義することになるんで、それは嫌だからと他でやってるみたいな適当なマクロで設定をまとめたファイルを #include する形に直したんで。これだけやってなかったんだよね。理由は忘れたけど。多分、今まで構造体の設定っていう形でまとまってて配列長も短かったからかな。メッセージのバイト列を {0x01, 0x02, ...} なんて形で持ってたからマクロの引数の数が合わないよとか言われて迷ったのは、C99 な __VA_ARGS__ を使うことで良しとした。どうせ移植性とかあんまり気にするところでもないし、一応、ANSI-C だことだし。本当に問題になるようなら 16 進リテラルの文字列にでもするさ。こっちの場合は 1 秒に 1 回、複数あるリクエストメッセージを順に選択しつつ送信して返事待ちなんていうことをしてるもんだから変数参照部分がよりくだくだしく鬱陶しい。でも、まあ、しょうがないかな……構造体をもう一つ挟むっていう手もあるんだけど、そこまでするもんでもないかなと思うし。

ちょっと現状について話をして、やっぱり状態遷移条件を一部戻してって言われてやっぱりなと思いつつ戻したり。で、外の小屋にある基板に最新のプログラムを書きに行こうかという直前で問題に気付いた。外部機器との通信が上手く行かない場合があるね。前からあるたまに失敗する、じゃなくて、失敗し続ける。ちょっと調べたらどうも、一回通信タイムアウトになると二度と復帰しないようになっちゃってるっぽい。原因は、今日の書き換え、だね。書き換え前のプログラムだと問題無いから。そうしてる間に時間も無くなってきたんで、とりあえず前のプログラムの状態遷移条件だけ変えたプログラムを書いてきて。

それで、今日はおしまいということで帰る。気になる状態で終わってしまった……晩ごはんどうしようかと悩みつつ、結局トマトスープのフジッリということに。豆とパンチェッタが主。それに玉ねぎと水菜と。晩ごはん前にかじったブリーがちょっと余計だったかもしれない。お腹一杯。

再送を頼んでおいたクレジットカード会社からの郵便とやらは、ちょっと前に出した収入証明の書類が古いからもっと新しいのおくれというものでした、ということでちょっとばたついてみたり。明日出掛けるから用意はしておかないとということで。あれが駄目なんだと給与明細二月分とかいう方か、って探してみたら、去年末のに源泉徴収票が付いててこれでいいやんなということに。っていうか、先月出した時点であったんだから気付いてたら出せたんだよな……前まで給与明細とは別だったから気付かなかったわ。

後は WWW 見たりゲームしたり明日の準備したり。準備と言ってもちょっと脇に除けてたものをまた持って行くようにしたっていうだけだけど。で、この装備でどんどん潜るわけにも行かないわなということでイークの洞窟 5、6 階を往復しただけで今日はおしまい。他の町村にも出て行かないと、稼いだお金の使いみちが乏しい。

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12