Repo

kjana00@gmail.com

older <-

2012-01-31 00:40:30

今朝はくもり。朝ごはんはパンとサラダとソーセージ。冷え込みが緩めでもうちょっとで日が出るかも、だとあったかくなることが期待されるわけなのだけど、どうなんだろうと思いつつ。

先週末の帰り際に思い付いたことをやってみて、変に落ちなくなるのを確認。これで良し、と思いきや、復帰した後の動作がまだおかしかったり。待ち状態だと色々リセットされるはずなのに、起動時と違うルートに向かうのは何ででしょう?

LED でデバッグ表示するぐらいしかないのが問題だよねと思いつつ確認。待ち状態から抜けるスイッチがオンの状態で外部機器を後から起動すると、最初の時でも間違ったというか、意図してない状態に落ちるのを確認するまでしばし。で、わかってからどうしてそっち行くんだとしばらく悩んでみる。通信エラーの回復待ちに行ってるんだな。でも外部機器との通信エラーは検出してなくて、それじゃ何で通信エラーなのかって、そういえばこいつってば、起動直後は初期化終了を返してきながら内部の通信スタンバイエラーを返してきてたんじゃなかったっけ。本当ならこのスタンバイってエラーじゃないんじゃないかと思わなくもないエラーを。

そういうことで、外部機器の内部通信エラーも一回検出したら通信エラーの回復待ちに落としてたのを複数回受信するまで検出しないようにしてみる。……無事、思った状態に進むようになった。ふん。普通に動いてる時だったら一回で通信回復待ちに行きたいから、起動時だけ特別扱いする必要があるか。……っていうか、外部機器からのエラーって、全部起動を確認してから見れば十分なような。ということで、ad-hoc な起動待ちを入れてみる。初期化完了のフラグが単にコントローラの初期化完了しか意味してないみたいだから、適当に他のフラグも見てやるっていうぐらいしか手が無いん。

やっと思った通り動くようになったところで、今朝、湧いて出た修正に手を付ける。また状態遷移条件をちょっと変えましょうっていう。通信でもらってる値がぎりぎり過ぎてしきい値そこにすると永久に踏めない可能性があるんだよね、ということでエラーも見ることにしましょう、と。で、さくさくと述語だけ書き換えておしまい、のつもりがすぐ動かなかったりする、と。あれ?

外部機器からの情報を上書きして動かしてみたら、何だか知らないけど思ったように出力経路が切り替わらない。入力系の方はちゃんと切り替わるんだけど。このフラグちゃんと立たないのかとデバッグ出力してみたらちゃんと立ってるんで余計にわけがわからない……って、出力系の切り替えの条件に入力系がどうなってるかっていうのが入ってるんだよな。入力系と出力系は独立して状態遷移してて、入力系の判定は出力系の判定より前にやってる。この条件では入力系と出力系の状態遷移が被ってるわけだけど、先に入力系の状態遷移が発生すると、出力系で見てる入力系の状態は当然、変わる。で、変わると、出力系の判定には引っ掛からなくなる、ね……

この条件の時、出力系の切り替えは必ず発生しなければいけない。今までの条件は今までの条件で、しきい値変えたら別に判定する必要があるわけだけど。ということで、入力系がどうあれ出力系を切り替える条件というのを判定に追加。今はたまたま同じ条件を表す述語がもう一つある状態だけど、まあ、しょうがないでしょう……ということで、こっちも直った。良かった。ついでにエラーの時に正面パネルの LED が点滅する場合があるっていうののテストも出来たことだし。

そういうのの脇で、あっちで煙噴かせたからこっちでも確認してみてと言われて、ねじが多いよと思いながら箱詰めされてるのを開けてみるとか、入力二系統両方に安定化電源繋いで動作を見てみるとか、煙噴いたのを直したからちょっと確認してと言われて一通り動作確認とか。それで早めに帰るぐらいのつもりだったのに、と思いつつ遅めに帰る。

で、帰って晩ごはんに豚汁うどん。舞茸を適当に入れたらえらく具沢山。沢山な割に種類が少ないのはしょうがないところということで。うどんはいいねぇ。

後は WWW 見たりゲームしたり。しばらくぶりに快勝すると気分がいいです。でもグリフォンだのヒポグリフだのでもちょっと無理すると死んでしまうから結局歩兵な時間が長くなるのは結構残念な感じ。今、使ってる武器の関係で歩兵でいる方が攻撃力が高いのがまた、あれ。

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12