Repo

kjana00@gmail.com

older <-

2010-01-22 01:00:59

今朝はくもり。朝ごはんはパンとソーセージとゆでたまごとサラダ。トマトが無くなってたんだったと思ってたらまだ半分残ってたとかありつつ。天気が悪いと冷え込みは緩むけど、空気がしけぽくて何となく冷えるのだな。

もらった設定ファイルに対応しましょうということで色々。ビットフラグなキャリブレーション変数をどうしてくれようと思いつつ、とりあえずビットマスクは設定ファイル中にあるからこれを拾うようにスクリプトをいじるっていうところから作業開始。一般のやつでこの変数拾えるようにするのは大変だから、また特別扱いの設定用色々を追加かな、とその色々をいじる。キャリブレーション変数の方についてはあんまり追加してなかったんで、観測用変数周りのと微妙に混乱して妙なことにしかけたりしつつもとりあえずコードは書けた、と。

それで動かしてみると挙動不審……足した変数の設定が無ければ大丈夫だけどあると落ちる。で、デバッグ出力を足してやったら今度はあっても無くても平気で動く。……何だそれ。デバッガ使えないからデバッグ出力足して現象に消えられると困るんですけど。しばらく悩んでみて、デバッグ出力を入れる場所を変えてみたらちゃんと SIGSEGV が再現するまま出力を足せたんでやっと調べられた。で、すぐにわかる事実。これ、初期化してないどころか使ってもいない変数で配列を参照してる……まとな値を使うようにしたらあっさり解決。

ちゃんと設定出来てるのかねっていうのを確認してる途中で、ツールで初期値を集めてもらったファイルに怪しいところがあるのが見つかる。MxN 行列に対して name[type,(N,M)] っていうような形のエントリがあるつもりでこっちのスクリプトは書いてあるし、事実今までそれで動いてた上に今でも他は恐らく全てちゃんとその形になってるのに、その怪しいエントリでは (M,N) になってる。同じ次元の行列、っていうか C だから配列の配列な変数で逆になってるっていうのは怪しいよね、やっぱり。ということでメール。肝心の付け足したコード周りについては 16 進数と 10 進数を変に混同して結果が怪しいと悩んだりしたけど、落ち着いてちゃんと確認すると真っ当に動いてるのが確認出来てた。

で、次。NVRAM の値を観測用に出力してる、でも新しく見るようになった値はビットフィールド束ねた構造体、っていうの。NVRAM マップ中のオフセットを基準に出力だの一覧だのを作ってたもんだから、当然同じオフセットになるビットフィールドとそれを束ねる構造体とでバッティングしたと。一瞬完全に書き換えかけたりしつつ色々悩んでみて、同じオフセットで名前が複数見つかったらタブで区切って並べといて後で刻もうかとか、出力だの一覧だののコードをオフセット基準のハッシュに入れてたけど見つけた順番に配列に詰めといて join でいいやんなとかで片付けた。もうちょっと些事はあるけど大まかにはそんなもの。

絵の方に影響のあるコードの修正が前の版にも新版にも入ってたんで適当に実装。ほぼ信号の名前が変わっただけとかいうのは本当に適当に。今まで外に出さないで済んでたから内側の奥の方で伝播が止まってた信号を引っ張り出すっていうのは、本当に引っ張り出すのは面倒臭いからトップレベルのブロックで再計算してみたりして。実際のところ、本質的にはこの値、ここで求められるべきではあるんだけどね。まあそれを言ったらこのブロックの中身、切り分けがかなり明からさまにおかしいんだけど……

そんな感じで終了。帰って晩ごはんにふかひれ餃子、を名乗っちゃいるけど食べてみた感じじゃふかひれ餡入りのすいとんっぽいもの。四川風つけだれを名乗るぴり辛の醤がなかなかおいしい。スープ自体は何というか、安い中華風スープな感じ。でも適当な濃度だと割と悪くない。っていうか最初が何か今一つだったのはちゃんと混ざってなかったんだな。皮がもちもちしてるのがほんとにすいとん。晩ごはんを食べる前にポテトチップスを食べてて、それでスープを残す前提でと思いつつ作っておきながら結局全部スープを飲んだんでお腹一杯でしょうがない。

後は WWW とゲームとまんが読みと。地道過ぎて盛り上がらない……

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12