Repo

kjana00@gmail.com

older <-

2012-05-01 00:17:33

今朝はくもり、だったような。朝ごはんを食べてすぐ寝て、お昼に起こされて食べて寝て、なんてしてるとさっぱり。晩ごはんのちょっと前に起きていつも通りのだらだら、で、晩ごはん食べてその続きという感じ。通信回線が細いとだらだら感が更に募る。まあとりあえず、色々手に入れた上で 12 階のランダムクエストまでは片付けたというところ。無茶しなければとりあえずは平気でしょう……

昨日、一昨日大荷物持って歩いた影響か、今日、寝過ぎなんだか、あちこちの筋が痛んでしょうがない。うーん。

2012-04-29 23:18:13

そんな感じで遊んできました、と。昨日の朝は快晴。朝ごはんはプッタネスカもどき。トマトソース買っても食べ切れないよということでこういうことに。これはこれで、それなりに、それなりなわけだけど。上着無くても暑いぐらい。金沢はどうだか知らないけど……と思いつつ到着してみたら、大阪よりも暑いぐらい。うん、いい天気。

何か市場と書いてあるところがあるし、きっと何か食べるところあるよねということで移動開始。前は不安だったから駅で食べて行ったけど、今回は不安、無いからね。それでラーメンっていうこともないわなとか、二次会会場が海鮮な感じの店ってわかってるんだよなとかの結果、お昼はフレンチということに。前菜にサラダ仕立ての魚の……天ぷら、じゃないわな、フレンチだから。まあそんなのに、ドミグラスソースのチキンローストとホワイトソースの白身魚のムニエル、ラタトゥイユとポテトサラダ添え、パン三種、ライムムースの苺ソースにコーヒーという軽ランチコース。おいしい、けどちょっと足りない、けどそれはパンのおかわりどうですか、にいらないと答えた人間の言うことではない、っていう感じ。

何か面白いものでもないかなと市場を見物してみたけど、串揚げ湯葉なんていうのは持ち運びに困りそうとか、丸ごとのあんこうは面白いだけで困るだろうとかであきらめる。ぜんまいを束ねたのが大量に並んでたり、魚がごろごろしてたり、市場はいいね。何となく、楽しい。で、会場まで移動すると開始時刻の三十分前でした、誰もいませんということでロビーで寝たり。人が来たところで状況開始。

二次会は居酒屋で、もずく酢とふきの煮物、お造り、蒸し豚しゃぶ、天ぷら、締めにうどんという感じ。魚がおいしい。お昼を被せなかった甲斐があるというもの。蒸ししゃぶのせいろの下にはだし、せいろから落ちた豚の脂と野菜の汁はそこへ、ということでうどんも大変おいしく。このだし飲みたいよね、でおたまを頼む人が出るぐらいには。

三次会会場はすぐ近所。何故だか金沢の店舗で作られたまんが喫茶の会員証が増えて行くよ、などと言いつつ手続き。この店は会員証の更新がいるのね。次に来た時には失効してそうだ……歌ったり寝たりで過して、無料のバイキングがあるね、とパンと茹で卵と野菜ジュースで朝ごはんにしてみたり。ブルーベリージャム付けて。

それだけじゃ足りないし電車が来るまでまだあるし、ということで駅のカフェで改めて朝ごはん。トースト、サラダ、温泉卵、ソーセージとラタトゥイユ、カプチーノというセット。単品のカプチーノがやっぱり同じぐらいの値段の割には十分においしく。

食べ終わったら丁度電車の発車十分前ぐらいということでホームへ。まあ朝だから多分大丈夫でしょうと思ってた通り、自由席で特に問題も無く座れる。半分ぐらいか、埋まってたの。この路線で進行方向に右側って南東向きだからまともに日が当たる。で、だいぶ暑い。

新潟はまだ雪が一杯残ってて、その中に桜が咲いてると何かいい感じ……とかな越後湯沢で新幹線に乗り換え。11:05 なんていう時刻だとちょっと混んで来るけどまだ大丈夫、ということでまた座って寝て過す。乗り換え予定の駅で、このまま寝ててもいいんだけどなとちょっと思ったけどまあ、素直に実家に帰って寝ようよ、ということでちゃんと乗り換えて。

最寄り駅に到着するとお昼の時間、ということで駅ビルの店でプッタネスカにパンとサラダとコーヒーが付いたセット。トマトソースの方がもどきよりもおいしいかな、やっぱり。自作と店で出してるものっていう差もあるとは言え。

いつもなら歩くけどそんな気力無いわ、ということでバスで動いて、結局バス亭からは歩くけど駅から三十分歩くよりはましだわ、ということで実家着。即、寝る。起きたら晩ごはんで、食べ終わったらまた寝て、お風呂に起こされて、出たらまた寝て……で、22:00 ぐらいにようやくまともに動き出してメモ書き。でもまあ、これ書き終わってちょっとあれこれしたらまた寝るよね、っていう感じ。

第 7 回北陸村

上着はいらないんじゃないか、どころかシャツだけでも暑かったり。水煮のたけのこだのトロ箱一杯の丸ごとあんこうだの魅力的なものは一杯あったけど、それでその後どうするんだと思い止まりつつ会場へ。お昼食べてからの到着でも早過ぎるのはまあ、しょうがない。

少人数で和室で、ということでのんびりした感じになった一日。とりあえずまず人狼で、村人になってぼんやり人狼を一人吊る扇動をしてたら何だか襲われたけど勝っていたなんていうのからスタート。朝になると GM が座布団積んだ山から落ちていた、とかありつつ。その後は語尾村で愉快な言動が飛び交う中、潜伏人狼二人が悠々と生き延びるのを見守った後クク 21。恋人達と祝祭は新しいか。祝祭の正式なルールが今一つ良くわからないから適当に決めた上でゲーム。まあ、ククだね、と。しばらくぶりに大人数でやったな。

それからグラフィティを見物。お吸い物というお題で味噌汁と答えられてしまう絵が並ぶ中、一人、お買い物の絵を描く人は素晴らしい感じ。で、思い付きでそれに書いて人狼するんだ、と無茶振り。編成も人狼、狂人、ハムスター、占い師、狩人、村人 × 2 と無茶振り。で、見物。たまに何を書いてる、というか描いてるんですか君、というのがありつつも、結構それなりにまともに議論になるもので。短期っぽい。人狼が夜、目を開けてしまったから突然死っていうのはともかく、普通に議論した結果、結局ハムスターが生き残ったのはハムスターが強かったでいいんだろうか。

積んだ座布団に飛び乗って失敗して滑り落ちるというのを繰り返すなんていう光景を楽しむのを挟んだりしつつ、猫とチョコレートで相も変わらぬ笑える無茶を通し合ったり。「まずバナナの皮で滑って転びます」から良くストーリー繋げるな……その後が「コインを落して」とかいう辺り、実は本人の経験かもとか思わなくも……さすがにバナナで転ば……ないと言い切れないな、あの人。

ゆったり過して一次会終了。二次会会場には迎えのバスで移動。うーん、楽。で、ドラム缶の上にドラム缶とか駄洒落にすらなってないからとか、ノーコンテキストで何か面白いこと言ってとか無茶言うなという弁論とか、アニメとまんがの談義延々とかありつつおいしく料理を頂く。お昼を市場に行っておきながらフレンチとかにしておいた甲斐があるというもの。あれもおいしかったけど。

三次会会場は二次会会場の裏、とかでスムーズに移動。色々あるまんが喫茶ね。ダーツに行く面々だの寝に行く人達だのと別れて、カラオケの部屋が空くまでということでファミリールームへ。で、何故か北陸に来て京浜急行のトレインシミュレータをやり出す人だの、そのリアルな電車の音にさくっと寝落ちる人だの。カラオケ部屋が空いた時に起きて手が空いてるのが二人だけ、とかだったんで二人でそっちを確保に行って、そしてそのままずっと歌って過してみたり。うん、二人だと回るの早いわ。歌い疲れたら後はだらっとおしゃべりな感じ。仕事の話だの、卒論の話だの。持っていった資料で紙飛行機作る教授はいかがなものかと思うわな、それは。

人の移動だの何だのあった結果、一人でぼんやりということになったんでちょっと寝るとか、無料のバイキングがあるわとパンと茹で卵とジュースでお腹が空いたのを紛らすとかで時間。タクシーで駅まで移動して、その辺に何か人が並んでて、とガイドブック眺めてる人に言ったりしつつ改めて朝食。食べ終わった辺りで丁度いい時間だったんで別れてホームへ……という感じで終了。遊んだ、遊んだ。

Tags | 人狼

2012-04-28 01:13:12

今朝はくもり……と思ってる間にもう晴れっていう感じ。朝ごはんはパンとサラダとソーセージ。ほんと、あっという間に雲一つ無い快晴になっちゃってまあ。眩しい。

通信系のテストを書くのに、まずはテスト用の治具がちゃんと使えるっていうのを確認しなきゃねっていうことから仕事を開始。メインマイコンの半二重で差動出力なポートを、デバッグ用に空いてるサブマイコンの UART に突っ込んでやろうという治具だもんだから、最初はとりあえずサブマイコンに普通に動いてる時の返事を出させるようにしてみようかと思った。でも、それだと本当に仕組みの確認をするためだけのために色々書かなきゃならないんで、メインマイコン側でテストに使う仕組みを作ってその返事を出させるようにしてみた。普通に通信してるところで、外部機器への要求じゃなくてテストメッセージを送るようにするだけ。キャッシュを構造体の配列に取ってるから不要に RAM を使うけど、これぐらいならいいでしょう、と。

それでそのままだと普通のメッセージのローテーションに戻っちゃうじゃないか、というバグを二度程直してみたものの、どうもタイムアウトするなというのを確認。何が悪いか確かめようじゃないかとオシロスコープで信号を見るところから始めたら、どうもそもそもサブマイコンに信号が行ってない。

ハードウェア担当の人に相談したりしつつ調べてみたら、治具の配線が間違っててドライバの受信ブロックが disable になってるのが見つかる。治具の段階で基板からの信号受信しなかったら、その先に信号出るはずもないねと直してもらって。

それでちゃんとサブマイコンでメッセージを受け取れるようになったものの、どうもループバックにしてるはずの返信がおかしい。真ん中辺りが丸々落ちてる感じ。うーん。……って、返信がおかしいのはともかく、その返信に伴う信号が基板側でメインマイコンに返ってないね?

落ちてるのはバグかもしれないけど信号出てないのは別問題でしょうとまた調べる。何か、もう一つ載せてるドライバの送信側が disable になってるような。ということで相談して直してもらったら、ソフトウェアをいじるまでもなくループバック通信が完成したっぽい……というのを調べてる最中にプローブの当て方を失敗して壊した予感。ありゃりゃん。

基本的には直した治具でちゃんと使えるみたいですっていうのを報告して、次の用意をしてもらいつつもう一つのポートのテスト方法を確認してみることに。こっちは単なるシリアルポートだから、特に治具なんてなくても TX と RX を短絡したらいい……のはいいけど、丁度いいクリップが無いな。

困った挙句に差動プローブのアダプタをわに口で繋ぐという暴挙に出てみた。どうせ今日一日、ちょっと試すだけだからとか言い訳しつつ。で、だから 3 番は真ん中だけど 2 番は右じゃなくて左なんだよ、なんていうぼけをかましつつも動作を確認。やっぱり今の仕組みだと送信と受信の間にディレイはいるか。ディレイ入れるだけでいいんだけど。それで試した仕組みをちゃんとしたテストコードに仕立て直したところで今日はおしまい。

買い物したくもないしな、ということで晩ごはんは近所でつけ麺と餃子ということに。やっぱり焼豚は前みたいに細切れの方がいいけどな、なんて思いつつ。それで帰って後は WWW 見たりゲームしたり。8 階まで降りただけ、とかな。まあ、慎重に。

12:00 ぐらいに着こうと思ったら 9:00 前には出なきゃいけないのか……ということで明日は朝からお出掛けなのです。だから早めに寝ようかなと思っていたのが 22:00 ぐらいだったか……

2012-04-27 00:17:21

今朝はくもり。朝ごはんはパンとサラダとソーセージ。無意味に遅くまで起きてると眠いったらない。春だし。

結局もうちょっとしきい値上げてみること出来るよなっていう方向に落ち着いて今日も計測。思ったよりも大きく値が上がって、もう一段階上げてみることしか出来なかったけど。その上も、やってみたら平気だったかもしれないけど……ちょっと、嫌な感じ。

で、データまとめたりオシロスコープでの波形キャプチャを EXCEL のワークシートに貼り付けたりで午前中が終わり。午後になってようやく通信系のテストに手を付けようかと思ったら、出なくていいもんだと思ってた拡大連絡会とやらに出席しなければいけないと言われて引っ張り出される。

……実は実質出先の上期方針発表会で、午後一杯ずっとだったりして。業績がどうの、だから今季はこうの。ちょっと数字先行な感じというか、掛け声は掛けてみてるけどあんまり具体的な方策があるわけじゃないねという雰囲気というか。何にしろ、予定の段階で定時一杯、実際に終わったのは予定の三十分後なんていう状況だととても仕事する気にならない、ということで帰る。

週末に出るっていうのに買ってしまった牛乳を消費しなきゃいけない、ということもあってキャベツとパンチェッタの牛乳煮込みでニョッキということにしてみた。にんじんとオリーブとケーパーも入れて何となく具沢山風。簡単にそれなりの味にはなるよね、これ。ちょっと胡椒が妙な効き方してたけど。

後は WWW 見てゲームして。モリバントまで出たら、そろそろ色々大丈夫かと表を回ってみたり、鉄獄に行ってみて 6 階のランダムクエストを片付けたり。ちょっとだけ装備が充実。本当に、ちょっとだけどね……

2012-04-26 01:24:31

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。何か最近夢見が変なのは暑くなってきたからなんだろうか。どうにもわけがわからなさ過ぎて記憶に残り難い夢が。

昨日の続きで測定で。要領を掴んだらそんなに時間はかからない……と言っていられるのは同じようなスイッチ用 MOSFET の温度測定だけだったりする。入力から出力作るところの温度測定と波形測定で引っ掛かる、引っ掛かる。

こういう実験だから手動制御のコンパイルオプションで作ってる。で、前に手動制御のところに異常な入出力で緊急停止するコードを入れた。今、ちょっと無理目な出力引っ張ったら止まっちゃうのは多分、それだろう……っていうのはまあいい。すぐに思い出して、その部分コメントアウトしたから。でも、コメントアウトした後でも止まらないまでもデューティが異常に低下したような感じになるのは何でだろうと。

それでしばらく悩んでたんだけど、実は出力を引っ張り過ぎて普通にデューティ制限が大きくかかってるだけっていう意見はどうだろうというのを思い付いてようやく進展。引っ張り方をもうちょっと細かく制御するっていうだけでは足りなくて、入力を当初の予定よりもデューティが大きくなる方に持っていってようやくまともに測定出来るようになった。良く裸基板の実験で使ってる系の方じゃない入力を、実物だとこれぐらいになるからっていう設定で動かしてたわけなんだけど、それだとデューティが元々あんまり大きくないもんだから、制限かかるとすぐに完全に落ち込んでしまうっていう。本物の出力相手だと別の要素もあってバランスするんだけど、実験用の相手は出力引っ張る以外何もしないから。

その後も、デューティ制限かかり出したのを放っておいたらやっぱり出力を引き過ぎになるから出力を絞るようにしなきゃいけなかった、なんていうことがあったりしてだいぶ面倒臭いことになったりしつつ、とりあえず時間で終了。定時退社日だから。一応、それなりに一通り測定出来たし。ただ、もうちょっと出力を引ける設定を試す余地があるから、もうちょっとやってもいいかもなというところ。やるとなると、二日がかりで結局終わらなかったかっていう話になるわけだけど。

とりあえず帰ってちょっとぼんやり。それから晩ごはんにブリーとクラッカーと、キャベツ、ケーパー、生ハムのスパゲティ。もうすぐ実家帰るっていう状況であんまり買い物する気にもならないから、ありものと使い切れるものでっていってそうなった。この生ハムはなかなか、悪くないかな。

後は WWW 見たりゲームしたり。6 階までしか降りないでいるとさすがにそうそう進展が無い、ということでとりあえずモリバントまで出るだけ出てみたとかぐらい。それでも地味に経験は入るし収入はあるから、そのうちそれなりに進展はするでしょう……

2012-04-25 01:17:49

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。何か昨日、今日と曜日感覚がおかしい……うっかりすると休みな気分。

通信系のテスト用治具を用意してもらわなきゃならないことだから、頼まれごとを片付けようかということに。回路検証系はとりあえずあんなものでいいでしょう。で、波形を見ておくっていう方はどうっていうこともないけど、ついでにこの辺の MOSFET に適当に電流流して温度測っといてというのをどうしようかと。

熱電対の束に PC のロガー繋げたのがあったんでとりあえずそれを使うことにして、使い方聞いてセットアップして。主に小さな MOSFET にどうやって熱電対を固定するかで苦労する話。テープで抑えてもすぐに抜けてくるしさ、とかな。

おまけに電源そっちのじゃなくてこっちの使ってとか、電流を引っ張るのに使った負荷が容量足りなかったとかあって、思ったよりもだいぶ時間がかかった。っていうか、少なくとも今日中に二系統分は片付けるつもりだったのに一系統分しか片付かなかった……おまけにロガーの入ってる PC が FDD ぐらいしか他にデータを転送する手段無いもんで大変。手元のノート PC には FDD なんてありませんよ、と。他人の PC 借りてデータ転送だけするという間抜けな事態。

そんな感じでばたばたしつつおしまい。定例打合せでもちょっとあれこれあったし。ハードウェア付け足してくれると確かにソフトウェア的にはすごく楽になるんだよな……まあ、とりあえず帰って晩ごはんに焼きそばと冷奴。何だ、その謎メニューという話は聞かない。豆腐があった、キャベツを食べなきゃ、何か焼きそばとか食べたい気がしてきた、の結果だからしょうがない。こうして並べてみても最後の欲求がさっぱりどこから出て来たのかわからないのもしょうがない。キャベツと玉ねぎとにんじんしか具がない焼きそばは結構良く出来た。

後は WWW 見たりゲームしたり。イークの洞窟の 6 階までをひたすらうろうろ。実に実りが無い感じで。

2012-04-24 01:50:07

今朝は……どうだったんだっけ? 晴れてたんだったような気がする。朝ごはんはパンとサラダとソーセージ。このソーセージはちょっと皮が厚め? 八重桜が満開とか、花水木がそろそろ開き始めたとか眺めやりつつ仕事場へ。

先週末で大体 A/D 値見るテストは出来上がり、のはずだけどまあ一応普通にエラーになるケースを作ってみたり、通常動作が壊れてないのを確認したり。完全に動作モードを分けてるから、テスト作り込んだことで影響が出るはずはないんだけど、影響出るはずのない修正で壊れまくった経験があるとびくびくせざるを得ないところがあります。原因は結局、未だにわかってないし。

そういうのの脇で、A/D 値を取れるようにしたのはいいけどこのセンサーの出力は簡単な式では表現出来ません、っていうのの値変換が VLOOKUP 使って出来るなっていうのを確かめたり、通信系のテスト方法を検討してみたり。そういう治具があるとして、っていうのでどうするか。テスト中でも周辺の色々は普通の時と同じように動作させてるんで、それに載せられると簡単なんだよなっていう。メインマイコン側は一応、それで大丈夫そうな気がする。載せ方はちょっと考えるとして。

サブマイコンの方だと、対外通信の方は単純な RS232C のループバックで済んじゃって、全二重の UART 任せでどうにでもなりそうな気がする。メインマイコンからの通信を受けて返すっていう方は、デバッグ出力を止めた上で適当な設定をしてやればいいだろうとは思うんだけど……何か今一つ、このデバッグ出力モジュールが良くわからないな。

良くわからないっていうか、下回りの UART の使い方が対外通信の場合と違う。何かレジスタレベルの初期化だけ同じ仕組みを流用して、データ出力は別口で何かしてるような……そうでもないか。SIO_write() なんて関数呼んでるんだし。でも SIO_open() して使うようなインターフェースに見えるし、実際対外通信の方ではそういう使い方をしてるんだけど、デバッグ出力の方で SIO_open() してる形跡が無い……

ちょっと部品選定の参考にするかもしれないからこの辺波形観測しといて、なんて頼まれてみたり、PC 用アプリケーションの見た目について、多分ラベル直してないだけだと思いますなんて他人のプログラムを解説してみたりを挟みつつ終わり。

何かお腹が空いたんだ、と角煮バーガーこと角煮まんを食べたりしてから晩ごはんに冷奴と豚汁うどん。ちょっと干し椎茸が足りなかったけど、これぐらいならまあそれなり。

後は WWW 見たりゲームしたり。15 階まで降りてみたらうっかり死んでしまったんで吸血鬼で出直してワーグを殲滅してみました、と。敵を倒すと経験値が入るのはいいな、やっぱり。ちょっといいアイテム手に入っただけでどっとレベル上がるのも悪くはないけど。でも、アンドロイドはアイテム手に入らない限り本人も装備も一切強化されないからねぇ。

2012-04-23 01:55:51

今朝はくもり。朝ごはんは野菜とアンチョビのトマトソーススパゲティ。ちょっと油断して茹で過ぎたけど、何とか大丈夫な範囲で助かった。

しばらくぐだぐだしたり、昨日買った本を読んだりした後、どうしようかと思いつつ結局寝る。眠いし。天気悪いし。それで夕方っていうか 19:00 は夜だよ、に買い物に出て、帰ってまたちょっと休憩。

21:00 ぐらいに動き出して、買ってきたゴーダかじりつつ晩ごはんの準備。で、晩ごはんは野菜とソーセージのトマトスープでフジッリ、と。このソーセージは薫香が強めかなと思ったけど、トマトソースで煮込んじゃうと問題無いみたいね。オイルのソースの方が気になったか。なかなかいい出来。ゴーダみたいなハードチーズは単にそのまま一塊食べるんだとちょっと塩辛いとか、旨みが強過ぎて重いのが問題、なんて思いつつ。

で、後はぐだぐだと WWW 見たりゲームしたり本を読んだり。適当に 12 階のランダムクエストまで片付けてみたけど、なかなか、ねぇ。

2012-04-22 02:22:51

今朝はくもり。朝ごはんはプッタネスカ。ちょっと日が差した後はまた何とも怪しい雲が広がって嫌な感じ。でもまあ、とりあえず、お出掛け。

地下鉄で恵美須町に出てあれやこれや。この家具屋、こんなにすぐまた改装に入るって実は危ないんじゃないだろうかと思ったりしつつ。それでとりあえず本屋で本を二冊買ったりしてからゲームしに。あのプロレス同好会ヒール枠みたいなのに憑いてるのはタケミカヅチだったか、なんてしばらく見物してからひどい調子の穴掘りだったり、間抜けな死に方をし過ぎなシューティングゲーム × いくつかだったり。後は何か新作入ってるけどちょっと様子見な感じ、とか。また海外メーカーのライセンス品? 前のよりちゃんとしてはいる風。まあ、前のも何となく残念な感じっていうだけで、他人が言うほどひどいとは思わなかったけど。

コンビニと古本屋に寄って、それから晩ごはんにつけ麺と餃子。太麺で、スープが選べるんで塩にしてみた。すっきりとしてるのはいいけどちょっと柚子がうるさいか。それと、だいぶ塩辛く感じる。つけ麺のスープをそのまま飲むのが悪いって言えばそうなんだけど。餃子もおいしいけどお勧めの塩で食べるとだいぶ塩辛い。すぐ付き過ぎちゃうのが問題。基本、おいしいんだけどね。

それで帰って買った本を読んでたらすっかり遅くなったりしつつちょっとだけ潜って戻って。さすがに全然収穫が無い。アンドロイドだと、何か装備品手に入れない限りいくらモンスターを虐殺して回っても全然強くなれないから進めないっていうのが辛い。

2012-04-20 23:47:39

今朝はくもり。朝ごはんはパンとサラダとソーセージ。天気が悪いとちょっと冷えるか。それにつけてもほんと、週末毎に天気が悪いこと。

コンデンサの放電待ちってあれだけやったら十分なはずなんだけど、ということであれこれ。とりあえずその後の計測点まではちゃんと来てるから、っていうのを確認してたら、計測開始直前には来てるけど計測が終わってないというのに気付いたり。タイムアウトしてたのか。で、それじゃあということで待ち時間を延ばしてみても解決せず。あれ?

もうちょっと LED 出力で確認してみるに、計測開始の時には呼ばれてる関数が二度と呼ばれてない。他のところではちゃんと計測出来てるから、この関数自体が悪いわけじゃないはずなんだけど。それでしばらく悩んでて、この最後の計測点だけガードの後だというのを思い付いたのはだいぶ後。単にガードの後だったらともかく、放電終了って言って止めてる機能が動いてなかったら return、だったりするのね。モジュール動き出してガード抜けて、そこで止めた後、計測を開始、次の周回では当然モジュール止まってるからガードを抜けられなくてそれ以上計測関数は呼ばれない。……何してるんだか。

状態を一つ増やして対処してやったらちゃんと計測が終わるようになった。ここでようやく予想通りの A/D 値に問題ありっていう状態に。で、考えてみるに、放電が終わる頃には普通問題無いレベルになってるんだよね。ということで確認してみると、やっぱり電圧が残ってるかもって思ってた方はちゃんと放電出来てきれいになってる。引っ掛かってるのは反対側。そういえばこの放電の仕組み動かすと入力側の電圧上がるっけ、ということでスイッチのテストの時と同じぐらい更に待ってみたら通った。そういうことなのね。放電終了待ちは時間じゃなくて例のモジュールの動き出して見てるから、そっちも待ちはちょっと削れるか。

ということで昨日いじってた辺りは出来上がり、というぐらいで打合せに。マイコンのポート割り当て修正しようかっていう。何か今と同じのでって言ってた割には、あちこち変える気満々なんですね、皆さん……まあ、トリビアルなポートの変更が半分以上を占めるわけではあるけど。

その後で A/D 値での回路検査系としては最後のテストの実装へ。昨日いじってたのに、出力最終段のスイッチオン、オフが加わるだけなんだけど。さすがにほぼ全く同じ状態遷移関数を二組用意したくないっていうのでしばらく悩んでみて、結局現在のテストが何かっていうのは静的変数で持ってるからそれで状態遷移にパッチ当てるかということに。そのためにテスト結果の保存部分をちょっと書き換えて、そのついでの他のテストでも同じように結果の保存部分を書き換えて。

とりあえず出来たところで出力を引っ張る負荷を持って来て繋ぐのにちょっと苦労したり。無駄に大きいのしかないと、重くて。それでえいやで動かしてみたらあっさり通った。ほっとしたわ。さすがに、今まで作ってたテストとほとんど変わらないと簡単。

そんな感じで今日はおしまい。エージング中のセットのプログラム書き換えに行って、マイコンのプログラム書き換えるのは簡単に済んだけどログ取り用のスクリプトを移動するのに苦労したりもしたけど。借りてる暗号化 USB メモリをログ取りに使ってる PC がまともに認識してくれないっていう問題。スクリプトの修正が大きいものじゃなかったから、その場で diff 眺めつつ前に入れておいたスクリプトを手で書き換えた。それはどうなんだっていう感じ。

帰ってまた晩ごはんに悩んで、結局、鴨汁でそばということになる。それにじーまーみ豆腐と枝豆と。いかにもきんぴらにして下さいという感じのごぼうとにんじんのささがき水煮が固形物だけで 100g。鴨の切り落しが 100g。結果。多いよ……それでお腹一杯になったものの、直後に枝豆を食べるのは平気だというこの不思議。

後は WWW 見てゲームしてで。こてんぱんに負けた後にろくに進まないと残念な感じ。10 階レベルじゃ大したの出ないとはいえ、それでもユニークモンスター相手の連戦があったのに収穫が全然無いって。ぐぅ。

2012-04-20 01:25:14

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。だいぶあったかくなったものでって、もうすぐ五月だよと思えば当たり前か。毎年こんなこと言ってるような気もする。何か、ばたばたとあったまったり寒くなったりを繰り返してる内にいつの間にやら、っていう印象。

セットアップしてない入力についての判定をコメントアウトしておいたら動いた、ということでちゃんと全部セットアップして、判定を生かして動かしてみましょうというところから。何か大袈裟な電源持ってくるしかなかったりして大変。本来、裸基板にフロントパネルの基板繋いでっていうテストを箱詰めしたセットで試してるのが悪いっていう話はあるけど、繋げるフロントパネルの基板が無いんだからしょうがない……とりあえず、びくびくしつつ試してみたところでは上手く行った模様。

後は実際に出力を作ってみるのと、おまけで出力経路のスイッチのテスト。通常動作で動かす時のシーケンスを辿りつつ、途中で A/D 値を測っていくということになるからこんな感じ、と三段階ぐらいの状態遷移を作ってみて、動かしてみるとテスト失敗。さて、予想通りとは言え、何だろうね。

多分出るだろうと思ってたのは、出力作る部分を止めた後に全停止状態の A/D 値になってるのを確認してるところ。適当に 5 秒待ってみたけど、あの大きな電解コンデンサ 、5 秒じゃ電荷抜けないよねっていう。でも見てるとどうも、それとは違うところで失敗してる風。もっと前だ、これは。

入力のスイッチを入れるところまではこの前に通過するテストでも見てるところだし、実際問題無く通ってる。それで出力を作り始めてからの計測でアウト。しばらくあれこれして、しまいに A/D 値の判定を全部外してから一つずつ戻していったら二系統ある出力の一方で電圧の A/D 値がおかしいっぽいのが判明。もう一方の半分以下になってる。通常動作で A/D 値ログを見てもそうなってる。セットから外して箱開けて、放っておくと繋いでないものの性で止まるから小細工した上で裸基板と同じように動かしてみたら、本当に電圧計測回路の出力がおかしい。何かチップ抵抗が一つ、1kΩ ぐらい抵抗値低くなってるし。

修理依頼したらマイコンの A/D 入力ポートから壊れてるっぽいなんていう判定が出た基板を別のに差し替えて、通常動作で両方の系統が同じぐらいの A/D 値を吐くのを確認してからセットに戻してようやくテストの続き……いきなり通らなくなってるな。

出力を作るところの A/D 値ばかりを気にしてて、他を全然見てなかったんで再確認。最初のテストで特に見てるところは問題無い。何が問題かというと、入力電圧の計測値。実は多少低めに見えようが何だろうが問題無い値が想定よりだいぶ低く見えてるせいで撥ねられてたっていう。この辺りはもうちょっと誤差範囲大きく見てもいいかな、としきい値を変更して通してみた。えらく ad-hoc だけどまあ、問題無いはずではあるし。

そこまで直したら予定通り、5 秒じゃ足らないんだ 5 秒じゃ、なところまで通った。5 秒を 45 秒にしても通らないなっていうのを確認したところで、この部分をオフしてオンする時にやってる放電作業を入れたらそんなに待つ必要の無くなるやんなというのを思い付いて、ちょっと実装してみたけどまだ何か変らしいというぐらいで今日はおしまい。

帰って晩ごはんをどうしようかちょっと悩む。結局、カレーになった。ズッキーニとキャベツが入って何となく春っぽい? ズッキーニは春と何の関係も無いっていうか、夏野菜だろあれっていう話はあるけど。噛み締められる肉はいいね。

それで後は WWW 見たりゲームしたりと。8 階から 10 階の間を延々と往復し続けるだけだと飽きがきます……

2012-04-19 00:14:14

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。八重桜がそろそろ見頃? とか、どうもひなげしは大量に並んでると可愛くないわねとか思いつつ。駅のホームから見える、雑草としてのチューリップも良く咲いてます。何であんなアスファルトの隙間からチューリップ生えたかね?

昨日書いたコードを動かしてみると、通るべきテストも通りませんというところからスタート。入出力のセッティングをちゃんとしてないから、素のコードだと異常を検出して当然の部分はあるんだけど、その辺についての判定をコメントアウトしても通らないんだな。またデバッグ用に LED 出力させつつどこまで通ってるのか眺めてみると、思ったよりは進んでる。っていうか、正しく通るはずっていうところはかなりちゃんと通ってる。

初期状態、スイッチオンの状態までは大丈夫で、スイッチをオフにした後の A/D 値がおかしい、と。何か電圧とか電流とか残りそうなところあったっけって回路図を見直したら、今テストしてるスイッチをオンにした直後にコンデンサが並んでたりして。じゃあ、スイッチオフにした後に待ち時間を入れてみる? ということで試したら通った。これか。電荷抜き用に抵抗経由でグランドに電流流してるけど、あんまり大きな電流にならないようにしてあるから結構時間かかるわけね。

ということでこれは通って、次のテストで失敗する。次のテストはまだ小細工してないから当たり前。これで繋げてない入力に関わる判定をコメントアウトするとスイッチのテストとしては全然意味無くなるけど単に様子見だからね、と小細工を入れてみると、通り抜けるはずが引っ掛かる。……あれ?

引っ掛かり方がタイムアウト臭いのも含めて何か変だとちょっと悩む。悩みつつ、タイムアウトした場合にはメインスイッチ切ってもテスト失敗の記憶が残って次にオンした場合に即座にテスト失敗になるっていうのを直してみたり。タイムアウトした場合にタイマーを止めてなかったっていうだけの問題。で、それはともかく、何で失敗するか、だ。

また LED でどこまで通ってるんだろうというのを見てたら、何かごく普通に最後のスイッチオフ状態まで通ってる。判定自体はほぼコメントアウトだから通るはず。でもエラー。はて? ……って、何かマクロでテスト用状態関数を定義するようにした時に、テスト結果を保存する配列の添字を修正し忘れてるし。全部最初のスイッチテストの結果に入れてるわ。サブマイコンには状況を聞かれてるテストの結果を返すようになってるから、ずっと N/A 返してるわけね。そりゃ、タイムアウトもする。

ちゃんと今やってるテストに対応する添字で結果を保存するようにしたらまともに動いた。はぁ。昼頃に、ちょっと表で動作試験するセットがあるからそれに新しめのプログラム焼いてとか、それにして新しいログ出力も見ようというならスクリプトも更新しないとと設置についていくとか、それで結局設置終わるまで作業を見届けることになるとかあった上に今日は定時退社日、ということで今日はこれまで。

帰って苺パイの残りを半分食べてぼけっとして、それから晩ごはんにとろろ昆布のつゆとかつおのたたきと冷奴。表の小屋での作業がやたらと暑かったのを思い出しつつ。日が落ちたらそんなに暑さは残ってないわけなんだけど、何となく。ああ、さっぱりする。

それで後は WWW 見たりゲームしたり苺パイの残りを食べたり。まだイークの洞窟でも鉄獄でも 8 階までしか降りてないとか、ほんと、進捗が遅い……でも早めると死ぬ。

2012-04-18 00:12:27

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。気持ちのいい天気で気持ち良く眠い。ぐぅ。

ちまちま事務処理から始めたところで打合せ。まあ、テストモード書いてます、でおしまい。あちらの担当が仕事無くなりそうだと言うから、ちょっと前にポート割り当てどうにかしたいんだったら見直しといてねって言われましたというのを言っておいたり。

昨日の最後にマクロで適当に付け足した分が壊れてないのを確認してから次へ。今度はスイッチ切り替えて A/D 値見てスイッチがまともかどうか確認するっていうテスト群。オフで計測、オンで計測、またオンにして計測でいいよね……はともかく、どう計測するかで迷ってみたり。最初は単純なやり方でまとまるかと思ったんだけど、テスト用の周辺セッティングでオンにすると電流が流れるスイッチと流れないスイッチがあるっていうので破綻。その経路が出来た時には電流が、っていうのでもいいって言えばいいんだけどそれも何だか too ad-hoc、ということで結局スイッチ設定毎で各所の A/D 値がどうなるっていうのを全部確認する関数を作ってみた。表だけ作って関数は一つにしたいところとはいえ、A/D 値としては uniform だけど各 A/D 値が示してる物理量は結構ばらばらということで本当に一つずる比較する関数を設定数分用意するという暴挙。七種類しかないんでなければもっと悩んでたな。

それでまた関数を定義するマクロで状態遷移関数を並べて出来上がり……少なくとも、コードは。さすがに最初、オン、オフで三つ、× スイッチの数っていうほぼ同じ関数群を並べ立てるのは嫌なわけで。それで済ませる気なら、A/D 値の確認であんなに悩んでないし。で、とりあえず作ったは作ったけど、これの動作確認しようとするとテスト用のセッティングを真面目にやってやらなきゃならないなという辺りで今日はおしまい。真面目にやらないとエラーになるっていうところは確認したし、昨日作ったテスト群の方でも同じようにエラーになるべきだなとちょっと修正して確認したりもしたけど。通る状態にした時ちゃんと通るのを確認しないとね……

で、まあ、今日のところは帰って、と。それで晩ごはんに豆と野菜とパンチェッタのトマトスープなフジッリ。一昨日食べなかった分、トマトソースが残ってたんで。ズッキーニとエリンギも。ぷりぷりとおいしい。その上、お風呂上がりには買ったら何か妙に上機嫌になってしまった苺のパイ。賞味期限が今日中って、無理、とか言いつつ。じゃあ何で 1 ホール買うんだっていう話だけど、だって 1 ホールでしか売ってないし……とか思いつつ半分食べて。

後は WWW 見たりゲームしたりとだらだら。魔道具術士は狂戦士と比べると圧倒的に進捗が遅いです。割とすぐ死にそうになれる。

苺のパイ

2012-04-17 00:48:40

今朝はくもり。朝ごはんはパンとサラダとソーセージ。環状線が遅れてたからか、妙に混み気味。鬱陶しいったら……

とりあえず 7SEG LED はエラーの時点滅させようなんていう話になったんでそっちから。他の LED を点滅させてるのに使ってるタイマーが使えるかと思ったけどそんなことも無く、ということでタイマーを一つ付け足すことに。原著者の意図が自律的なモジュールっていうのだからそうならざるを得ない感じ。まあ、とりあえず点滅はしたさ。何か変な表示があってちょっと悩んだけど。unsigned char を unsigned short として表示するのは構わないけど、そうしたのを忘れて元の変数に 888 とか代入するのはやめましょう。

それからメインマイコンの方のフレームワーク組み立てへ。まあ、そんなご大層なものかと問われたら、自信を持ってそんなわけないって答えるなっていう……要求受けたところでテスト用の状態遷移に移って、終わったらそのまま待機する感じ。このテストモードから通常動作に移行する予定は無いからそれで構わない。テストの設定はまたマクロで一つにまとめて #include する時に #define でマクロの定義を切り替える形。で、大雑把に作って簡単なテストを実装してみたら、これが動かない。

最初はタイムアウトしてた。どうしてだろうと思ったら、そもそもテストの状態遷移に移ってなかった。何かと思ったら、ダミーを入れてずらしたせいで、テスト用の状態遷移関数がダミーに割り当てられてた……手で入れちゃだめだね、ダミーでも。同じ仕組み使っとかないと。

ちゃんとした関数が呼ばれてまともに状態遷移するようになると、今度は真っ当な値なはずなのにエラーになってくれてまた悩む。objdump -S でアセンブラコード眺めてみたりもしたけど結局のところ、合計を出した後に平均を出すために割り算する場所には行かないようになってたということだったりして。switch の中身をきれいに分けようとし過ぎたか。もしくは A/D 値の平均算出部分の状態分けが足りなかったか。そこでもう 1ms 遅らせてもな、ということで合計の算出が終わったら割り算もしてやるようにした。これで、とりあえず一番単純な類のテストは出来上がり。いくつかそういうのがあるんでその辺も適当に実装してやる。まあ、また、関数を定義するマクロとか作ってまとめるわけね。面倒臭いから。

そんな感じで今日はおしまい。半二重の RS485 通信のテストってどうしようかと相談されて一緒に悩んだりもしたけど。デバッグ用の RS232C に投げちゃえ、という結論。いいのか、そんなで。まあとにかく帰って、晩ごはんに冷奴と豚汁うどん、と。

後は WWW 見たりゲームしたりと。さくさく負けまくると痛いですわ、とかの後、アンドロイドで魔道具術士はどうなるか、なんて試しだす。知力低くて魔法使い難いわ、HP は全然上がらないわでなかなか、あれ。比較対象が昨日死んだ狂戦士だからほんと、HP がものすごく低く見える。攻撃力も下手すると 1/5 とかに見える感じだし。

2012-04-16 00:52:40

今朝は晴れ。朝ごはんは玉ねぎ、エリンギ、ズッキーニ、アンチョビのトマトソーススパゲティ。この上キャベツはやり過ぎな気がするし、こんなものかな。

このところ寝てばっかりいたけど久しぶりに散歩しようかという気になったんで出掛ける。パンだけ確保しておいてから、OBP 経由で大阪城へ。ホールで何かイベント中らしいとか、花見客とかでやたらと人が多い。梅は無理でもまだ桃は花盛り、と桃園の方に回って桜と一緒に眺めたり、まだ鴨がいるわと堀を眺めたりしつつ。

大手前から府庁舎の脇を抜けて西へ。府庁の庭にはしご車並べて何かしてたのは訓練? あのはしごはちゃんと屋上まで届くんだな……それで谷町筋をちょっと下って、適当なところでまた西へ。ああ、久宝寺通りの商店街に繋がるところだったか、ここ。日曜日だと閉まってる店の方が多くて今一つ、面白くないわね。

そのまま抜けて心斎橋筋をちょっと下って。この辺りも散歩には向かないよね。人が多過ぎて。で、古本屋に寄って一休み。

……っていうには長くないか、という程度に休憩してから帰る。長堀通りまで下ってからとりあえず東へ抜けて、松屋町筋を北へ。この辺りもまあ、日曜日は開いてる店が少ないわけで。それでなくてもちょっと遅いし……

適当に北東方向にがたがた抜けて、結局、天満橋で土佐堀通りに出て東へ、と。日が落ちても今日はあんまり冷えてこない。春っぽい。それでそのまま進んで行ったら、気にはしてたけどいつも開いてなかった店が開いてる、ということで晩ごはん。鶏白湯つけ麺、だそうな。太めの麺に濃厚なスープ。とりの風味が強い上に麺が麺なもんだから、何かうどんを食べてる気分にちょっとなったりして。なかなかおいしいけど、ほんとにうどんでもいい気がしたりはする。

後はそのまま帰る、と。電球使ってるっぽい街灯直下の八重桜だけ満開。ちょっと外れるとまだちらほら咲いたか、咲かないかぐらいなのに。オレンジがかった光を透かして見ると、桜もオレンジがかって見えるのが何とも。これはこれできれいはきれいだけど。

後は部屋でのんびり。うっかりクッパ大王に焼き殺されてみたりしつつ。何か見えないところからファイアーボール飛んで来てるなと思ってたらいつの間にか死んでましたという。ちょっとやそっとじゃ死なない HP に見えるからうっかりし易いかも、アンドロイド。……うっかりするのが悪いわけだけどさ。

2012-04-15 01:56:59

今朝は晴れ。朝ごはんはプッタネスカ。そろそろいい加減、毛布はいらないんじゃないだろうかという今日この頃。変な夢を見るのは寝苦しいせい?

地下鉄で恵美須町に出てあれこれと。実にばかそうなゲームがばかそうでぐぅとか何とか。何だ波止場から飛び込もうとするレミングのマフィアって……で、本屋で買うものが無いなと思ってからゲームしに。ここで墜ちなければ実戦というところで墜ちなかったから実戦、でも phase 1 でああも墜ちると後が無いよねとか。何か妙に久しぶりな気がするけどそれなりな感じでそれなりにクリアとか。得点低い割にミスが多いわけだけど。

コンビニと古本屋に寄ってから帰り道で晩ごはんにつけ麺と餃子。この店、もうじき閉店なのね。そんなに悪いとも思わないんだけどな。太麺に濃厚な魚風味のスープ。餃子もぷりっとしつつぱりっと焼き上がってるし。後に入る店ももう決まってるらしい。ふぅん。

で、何となく物足りない気がしたんでもうちょっと何かと思ったんだけど、ポテトチップスっていう気分でもないし買おうとしたクラッカーは無いしということでメロンパンのラスクなんて買ってみた。軽い食べ心地でなかなか悪くはないけど、まあ当然のようにとても甘い。

WWW 見たりゲームしたりでおしまい。35 階まで降りてみた。特に何も得られなかった。残念……とか。城に行ったり山に行ったりカメレオンの洞窟に行ったりするべきか。スティング回収のクエストはちょっと現状だと恐い。HP 800 超なんて、今まで見た最高の倍近くはあるんだけど。

2012-04-14 00:56:39

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。晴れって言っても雲多いよなという感じ。ちらほら、そろそろ八重桜も咲き出しそうな。

テストモードの仕組みを作っておくぐらいしようかなと思ってたところで打合せ。昨日投げておいた資料についてということで。別に意味があろうが無かろうが、測れるものは測っておいたらいいじゃないとか、要求仕様書っていうレベルにないってそういうレベルに引き上げる暇も人員も無いのにいちいち理想論引っ張り出してぶつぶつ文句言うのいい加減止めませんかとかありつつ。回路の健全性を確認するための A/D 値って一辺に全部取れはするけど、その結果何の問題を検出したかっていうのを切り分けたいから少なくとも出力は段階を踏む必要あり、か。まあ、言われてみればその通り。昨日作ったセットとしての UI 出力動作試験に使うようなのはこのテストモードとは別の話っていうことだと、何かトリガを分けなきゃならないね……

そんなで仕様もそれなりにはっきりして、ついでに見つけられなかった清書した資料もありかがわかったところで朝の続き。まずは仕組みを作りましょう。とりあえずサブマイコン側から。まあ、昨日べたにテストモードなら、で LED だの 7SEG だのブザーだのの出力を突っ込んだ辺りに順番にテストを実行していくモジュールの呼び出しを付け加えればいい話ではある。メインマイコンでのテストについてはコマンド投げて状態を拾ってくる、でいいかな。サブマイコンでやるテストについては後で考えよう……そんなのだとメインマイコンでのテストをやる関数っていうのは要するにコマンド投げるだけになるんでマクロでまとめて定義出来ちゃうね。で、ポインタの配列に突っ込んで、コマンドへの応答でセットされるようにした状態を見てインデックス順番に進めて、と。

とりあえずこんなものか、ということでメインマイコン側は単にテスト成功っていう返事を返すようにだけした上で動かしてみた。ら、最初のテストで引っ掛かってる。タイムアウトエラーにすらならないのは何なんだろうね? ……って、それはタイムアウトの確認しようと呼んでた関数が間違ってただけだった。timer_expired() なんて名前の関数が、よもや述語じゃなくて指定したタイマーを expired にする関数だとは思うまいっていうもので。直したらタイムアウトはするようになった。

何でテスト成功の応答で次に進まないんだろうともうちょっと調べたら、返事を受け取った後で状態をセットしてる様子が無い。メインとの通信モジュールの方で調べてみたら、ちゃんと応答を受信してるけど異常だとして弾いてる……って、ヘッダ含めて長さ 3 の応答が必要だっていうところで len <= 3 で弾いてたらだめだろう、それは。ということで len < 3 にしたら無事、思った通りに最後までテスト関数が呼ばれるようになった。次に出すものの仕様打合せなんていうので延々時間を取ったのもあって、とりあえず、今日はここまで。

ということで帰って晩ごはんに野菜の付け合わせでステーキ。何か肉が塊な肉野菜炒めだよね、とかいう意見は置いといて。実に肉々しくおいしい。焼けてるの表面だけとかは気にしない方向。

後は WWW 見たりゲームしたり寝たり。何か最近妙に眠くなる。それでちょっと寝て、が微妙にちょっととは言い難くなったりしてあれ。とりあえず 35 階まで降りてみたとか、耐地獄の指輪が手に入ったから闘技場のバンパイアロードを倒してみたけど危うく出血死しかけたとか。闘技場の中で戦闘中に死んでも追い出されるだけだけど、戦闘後に傷が原因の出血で死んだらどうなるかわからないし、ましてうっかり闘技場を出た後だと単に街中で出血してるだけだから本当に死んじゃうよね。

2012-04-13 00:59:24

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。天気がいいのは良いことです。ちょっと雲多めだけど。

もうちょっとラベル貼りだのごみの片付けだのいるのですよとか、今朝もプロキシの具合が妙っていうか何か必ずうまく行く順序というのがありそうな気がするけど今のところそれがわからない感じで VPN アクセスに苦労してみたり。それから仕事へ。だいたいこんなものかな、っていうアイディアをひねくり回すのに飽きたんで、単独で必要にならなくても結局テストモード実装すると必要になるから LED だの 7SEG だのブザーだのをとにかく全部動かすだけ動かす動作の実装。

ディップスイッチがオンの時にメインスイッチ入れたらっていう条件でいいよねとサブマイコン側だけいじってみたけど 7SEG 点かないしブザーを停止ボタンで止められないしということでちょっと。7SEG はそもそも設定しようとしたモードに設定出来てなかったからで、ブザーは毎回音が出るように設定してるから止めてもすぐ鳴りだすというだけでした……

というのはすぐに直ったけど、状態読み出しを付け加えたディップスイッチをどうしようがテストモードでしか動かなくなってたという問題でちょっと悩まされる。普通にロジックの問題にしてはどうも謎なもんだから、ちゃんと動いてた別のディップスイッチの方を見るようにしてみたらあっさり動いたり。ついでに、付け加えたディップスイッチ使うとその動いてた別のコード切り替えが動かなかったり。それで書き換え前のソースにあったコメントを見てから回路図を見て納得。このディップスイッチ、ジャンパ飛ばさないと使えないじゃない。そういうことで、今まで使ってたディップスイッチを使うようにしてサブマイコン側の基本は OK。

メインマイコン側へは UART 通信でコマンド投げる形。将来的には他の色々なテストも別のコマンド投げて様子を見る。今は、単にメインマイコン管轄の LED を点滅させるだけだけど。ということでコマンド投げるコードを書いてからメイン側。受け取って、返事を出すところで表示系を差し替える感じにしてとりあえず良し……と思ったけどこれだとメインスイッチ切ってもテストモードの点滅表示のままになるのでした。そりゃ、そうか。

そういうことで、サブ側でスイッチ切る時に終了コマンド投げるようにして、それを受け取って表示系をまた差し替えて、と。うん、とりあえずこれで要望にあったテストは出来るようになったし、もっと別のテストやる場合の雰囲気も掴めた。多分。

そういうところに先週一杯休んでた人が来て今の進捗はというから、こんな感じと説明してたらちょっと遅くなった、とかで今日はおしまい。帰って晩ごはんに冷奴ととり汁のそば。皮付きのとりを切るんだとやっぱり出刃か何か欲しくなるところ。万能包丁の類だとどうしても切れ味悪い。

後は WWW 見たりゲームしたり。無理にダブル受けなくてもああダイス目があれだとどうにもならないねとか腐ってみてから、シュロブを楽に倒せた勢いで 25 階レベルクエストをさくさく全部片付けてみたり。ちょっとぐらい召喚されても、ちょっとぐらい魔法喰らっても、無頓着に敵を殴り倒してればどうにかなる HP と AC と攻撃力って素敵。かけらも魔法的なことは扱えないから困ったりはするわけだけど。

2012-04-12 01:19:01

今朝はくもり。朝ごはんはパンとサラダとソーセージ。この道を上ったところで中学校っていうと、桜ノ宮の方がよっぽど近いはずだよな、と集団を見て思いつつ。……あれ? あっちの中学校って、誘導の教師っぽいのが付けてた腕章にあったのと違う名前だったよな……?

来月頭には引っ越しがあります、その見積りに金曜日に業者が来るんで運ぶものにラベリングしといて下さい、なんていう話があってちょっとばたばたしたりしつつ。ずっと放置されてた知らない基板がやっと片付くとかいう。

それはともかく、出荷前検査に使うモードを付けようとすると、というので調べものだの資料書きだの。A/D 値見て回路の健全性を確認するのはまあ、どうにでもなるか。通信系の確認にループバック用の治具を付けといてループバックで確認っていうのはあんまりぴんと来ないけど。テストモードに入るトリガはまあ置いとくとして、入ったらサブマイコンからのリクエストでステップを進めていく感じかな……

朝、とうとう古い方のプロキシが止められたっぽく、うちの社内メールだの何だの見るのどうしようかと思いながら、ちょっと w3m 使う都合上、NTLM 認証をやってくれる何かがいるのだよと cntlm を突っ込んでたりしたわけだけど、午後になってしばらくしたら、ブロックされてた VPN の入口サイトが見えるようになってた、なんてこともありつつおしまい。cntlm の方が ntlmaps よりもいいかな。そのためだけに Python インストールするの面倒、というのを除けても ntlmaps よりパフォーマンスは上っぽい。

帰ってしばらくぼけっとして、それから晩ごはんに野菜スープとたこざんぎ。どんなのかと思ったらたこの摺身に刻んだのを混ぜて揚げたっぽい。しょうがとにんにくが効いてる感じ。なかなかおいしいけど、六つは多めか。一つずつが結構大きいからねぇ。

後は WWW 見たりゲームしたり、唐突に眠くなったんでちょっと寝たり。森をうろうろしても鉄獄の 30 階まで降りても大していいものが手に入らないな……昨日のうちに拾ったアーティファクトの鎧はともかく。あれは、いいものだ。

2012-04-11 00:48:56

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。先週の二、三日がが特別だったのかと思ったけど、今日もまた大勢中学生っぽい制服姿が通り過ぎていく。何だろ。うちの前の道、新しく通学路認定でもされた?

遅れてる電車で早めに着いた、と。で、とりあえず昨日帰りに思い出した修正から。単に前の GPIO 通知によるリクエストが飛んでくるまで次の通知は出さないっていうだけで出来上がり。それでそれを試す間も無く打合せ。相変わらず良くわからないスケジュール感とか、ちゃんと考えると違う気がと言うだけで考えた結果があるでもどう考えるか示すでもないのにいらつくとか。きちんと設計したらどうなるかはともかく、今の状況でスイッチ切ったらエラーをクリアするから次にスイッチ入れた時には static 変数のフラグがクリアされてないからもう一度エラーを検出したりはしないっていうのは明らかにおかしいでしょうに、とかな。

それからしばらく昨日、今日の修正で壊れてないことを確認して、午後の早めの時刻で移動開始。今日は本社で社員集会。で、その前に業績マネージメントの面談をしようという話があったんで。大体そこに書いた通りでまあ何とか回りましたねとか、最近あちらも人が減ってどうこうとか。特別突っ込まれるようなこともなく和やかに。

社員集会までちょっと時間があるからと休憩に出たりして、それで戻って社長のお話を聞く、と。何か良くわからない増収だな……唐突過ぎる。まあそれで利益も増えたんだから良かったは良かったわけだけど。一番ひどい時に比べればだいぶ良くなってきたか。

その後は懇親会ということで、まあ、晩ごはん。仕出しの揚げ物はちょっと微妙? 寿司と煮物焼き物は割と良かったけど。チーズケーキといちごのムースもそれなり。で、そんなこと言いつつお腹一杯。食べ過ぎ。

だもんで帰ってちょっと横になったり。それから後は WWW 見たりゲームしたり。25 階レベルのクエスト一つあっさり片付けてみたけど、ミミックの財宝に挑むのはちょっと辛いか……辛くてもそのうち突っ込まざるを得ないわけだけど。体力任せで何とかなるんだろうか、と思いつつ、とりあえず森に行き始めてお茶を濁してみたり。

2012-04-10 00:44:15

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。変な夢を見てわけがわからない気分になったりして。変だったっていうのだけが強く印象に残る。何がどう変なんだったっけ……?

まあとりあえずお仕事ということで。先週末、試しに実装してみたやつ、ちょっと甘いところが残ってたなと直してから試そうかと思ってたけど、直してるうちにこの方法はどうあがいても一定以上の頑健性を得られないなというのに気付いてみたりする。応答以外に非同期のメッセージがあるから、稠密なストリームからメッセージを切り出すっていう感じの実装にしてみていたわけなんだけど、ちょっとどこがでずれが生じたら二度と復帰出来ない可能性がある。たまたまメッセージヘッダのコードとペイロード長に似たシーケンスが出て来たら困るねっていう。後でペイロード長はメッセージヘッダのやつじゃないの使えば大丈夫な気がしたりはしたけど、それも気のせいでやっぱりだめ。間違って受け入れられることが少なくなって廃棄されるようになるだけね。

修正前のコードは一度の read で受信するのはメッセージ境界で区切れたメッセージだっていう想定は変だけど、リクエスト-レスポンスの形の部分だけ見たら修正後のコードよりよっぽど頑健。リクエスト送信前に UART のバッファをハードウェアレベルからクリアしてるから、非同期なメッセージが無い限り受信出来るのはレスポンスのヘッダからになるし、メッセージが壊れてたり余分なバイトが付いてたりしても一つのリクエスト-レスポンス内で閉じる。やっぱり、前にちょっと思った通り、非同期な通知には GPIO 使っておいて、UART 通信はリクエスト-レスポンス型に限定しておいた方が簡単で頑健か。

そういうことで、そっち方面に方針を転換。さすがに部分的に受信した場合や余計なバイトがある場合を全く無視してただ read っていうのはあれだから、送信したリクエストに応じたレスポンス長丁度だけ読むようにして、受信したレスポンスもヘッダぐらいはちゃんと見て正しいレスポンスであることを確認して……というのを付け加えるのが面倒臭くて見通し悪いんで書き直す。二つのスイッチに二つのタイマーで、送信したら受信タイマーキックして、受信が終わるかタイムアウトでレスポンスを処理して送信タイマーキックして、という感じ。

サブマイコン側はそれでいいとして、メインマイコン側はどうしようかなとちょっと考える。検出したエラー毎に GPIO でシグナルするのはいいとして、どうやってやろうかと。一応、複数のエラーが検出される場合があり得るし、そうでなくてもサブマイコンがエラーのレポートをリクエストする前に次のエラーを検出する場合があり得る。じゃあ、キューに入れといて、何か入ってたら GPIO でシグナル、リクエストに応える時にシグナル落すでいいかな……いい気がする。キュー自体は UART 用に用意したやつを使い回せるからそれで良し。前にレポートを直接送信してた関数がキューイングだけするようにして、周期タスクで空じゃなかったらシグナルするようにして出来上がり……だけど大丈夫なんだろうね?

前から全然問題無さそうな修正で壊れるようになったりしてるからな……とびくびくしつつ試してみたところ、どうやら無事、思った通り動いてるらしい。良かった、とほっとしたところで今日はおしまい。帰る途中で、キューに複数のエラーがある場合に前のエラーに対するリクエストを片付けるまで次のエラーの処理は待たなきゃいけないっていうのを思い出したりはしたけど。そのためにキューイングするようにしたんだろうに。とまれ、帰って晩ごはんに冷奴と豚汁うどん。今日は 18℃ だって。極端な。こう気温が乱高下してくれると困るわ。おかげで冷奴はおいしいわけだけど。

後は WWW 見たりゲームしたり。こう派手な負けっぷりだとあきらめも付き易いですわねとか、こんなひどいミスしても勝つ時は勝つけどなとか、えいやで 24 階のランダムクエストに挑戦したらリッチにひどい目にあったとか。全然ダメージは痛くないけど、延々ととどめを刺せない内にテレポートで逃げ回られつつ罠を大量にばらまかれると心が折れそうになるわ……

2012-04-09 00:08:58

今朝は晴れ。朝ごはんはかきとたけのこのトマトソーススパゲティ。それなりにまとまった。あんな扱いでもちゃんとおいしいのね、かき。折角いい天気ではあるんだけど、まあ、何かやる気無くて眠いんだよという感じで、まあ、その。

起きて買い物に出るついでに髪を切ってもらって、それで帰ってきてちょっとだらだらしてから晩ごはんに挽肉のトマトソースでファルファッレ。ちょっとソース多過ぎという感じが。でも見合うぐらいファルファッレも入ってたから、要するに食べ過ぎという話が。

後はだらだらの続きだったり。耐火の指輪手に入れたんでアーチ=ヴァイル倒しに行って、まあこれなら行けるよねとオークの洞窟を制覇して、こっちのがレベル低いんだよなと柳じじいを退治して。展開早いな。この辺りで遅くなるかとは思うけど。獲得の巻物手に入れても読めないのが残念過ぎてどうしてくれようという感じ。

2012-04-08 01:51:34

今朝はくもり。朝ごはんはプッタネスカ。何だかちょっと寒い気がする。ほんと、週末毎に天気悪くて寒くなるような……とまれ、行動はいつもの通りで。

ということで地下鉄で恵美須町に出てあれこれと。ちょっと日が差してくれば微妙にあったかい。でもまあ、寒いよね。客引きが寒そうでたまらないんですけど……で、本屋でまんがを一冊買ってゲームしに、と。ここで墜ちなければ実戦行きのレベル 40 でばたばた墜ちたからレベル 50 に連れていかれて更にばたばた墜ちるとか。1,400m 台って調子がいいんだか悪いんだか迷うかなとか。まあ、悪いんだけど。明らかに。調子云々というか、登場当初にやってた頃と比べたら明白に腕が落ちてる。

もうちょっとコンビニと古本屋に寄って、帰る途中で晩ごはんに薄塩白湯麺と五目春巻。いつもここでなら担々麺食べてるけどたまには、と。細麺で、真っ白なスープで。豆乳かね、これ。それにとりの胸肉だかささみだか。優しい味、か。おいしい。前に食べて良かったから頼んだ春巻もぱりぱりのとろとろで良いです。あったまるし。

京橋で駅前の温度計見たら 6℃。何か寒い気がする、じゃなくてほんとに真冬並の寒さだったわけね。二月ぐらいに見たぞ、その気温っていう。それで帰ってミモレットかじりつつまんが読んだり、WWW 見たり、ゲームしたり。透明視認ないとやっぱり Q の相手は面倒と思いつつ薬のおかげでさっくり倒してみたとか、平気な気がするからと 15 階レベルのクエストを二つ片付けてみるとか。耐火無いともう一つは無理。オークの洞窟か迷宮にでも行くべきかな。

2012-04-07 01:29:48

今朝はくもり。朝ごはんはパンとサラダとソーセージ。ほんと、週末毎に天気が悪くなる気がするな……多分、気のせいではあるんだけど。ちょっと気温も低めな中仕事場へ。

サブマイコンで見てるセンサーがちゃんとしてるんだかどうなんだか、ということで先週 A/D 値のログを吐けるようにしておいたのを確認……っていうか、こうすると値が変わるはず、っていうのでとにかく変わるっていうことを確認。思ったのと逆方向に動いてるけど、ソース見るとそう動くのが正しいみたい。っていうことは、とりあえずいいのか。

この A/D 値を見てエラー検出してメイン側に通知してるわけで、というのを追い掛けてるうちに、天絡なり地絡なり、単に繋ぎ忘れるなりした場合にエラーにならないなっていうのに気付く。エラーの時は特別な値を返してるけど、特別な値として扱ってないからエラーにならないっていう。それはまずいだろうと直してやったらいきなりブレーカ落ちるようになったけど。

何でかっていうと、センサーの A/D 値を物理値に換算した上で移動平均を取ってアプリケーションに渡すモジュールが、データが足りないうちはエラー値を返すようになってたからでした……ということでエラーにならない値を返すようにしてやる。でも、まだ落ちる。何だと思ったら、メインマイコンから渡してる値も同じところでエラー検出に使ってるんだけど、応答が返ってきてキャッシュが更新されるまではこれもエラー値を返すようになってるからでした……ということでこっちも直してめでたし、めでたし。適当にエラーにするしきい値を変えて、最初にやったのと同じように測定値が変わるようにしてやると、ちゃんと条件に合わせてエラーになる。後は実際の状況と A/D 値から算出してる値が十分に近いことを確認出来ればっていうところだけど……さて、どうしようかね?

ちょっと道具が見当たらないから保留しておいて、月曜日の出張に持って行くからリリース版のプログラム焼いといてと言われた基板をチェックしたり、メインマイコンとサブマイコンの通信周りがどうにも脆弱なのをどうにかしようと考えてみたり。非同期な通知があるのに要求送って応答を待つっていうのを基本にしてちゃだめだろう……

要求と応答の厳密な対応が必要なわけでもなし、ということでメインマイコン側からのメッセージはとにかく受信して処理する、適当な間隔で要求を送り付けておくという形にしてみた。受信するメッセージが途中で切れてたりしても大丈夫なように、コードとペイロード長を読んで、それからペイロード読んで一メッセージ分になったら処理するように、と。要求と応答の形っていうだけならまだしも、応答にしろ非同期な通知にしろ UART モジュールのバッファを一回読み出すだけできっちりメッセージバウンダリで区切ってメッセージ取れるっていう想定なのが気持ち悪かったのを解消。

……したのはいいけど、通信出来なくなりましたとさ……ということでしばらくデバッグ。要求送り付けるのに使うタイマーキックしてないとか、ペイロード長とヘッダ含めたメッセージ長が一致するわけないとか、キャッシュエントリをちゃんと探索しないで適当な番号のキャッシュにデータ放り込んだらそりゃだめだろうとか、色々と細かくもばかばかしいバグを片付けたら一応、ちゃんと通信出来るようになった。月曜日にもうちょっと様子見るとして、これを本当にコミットするかどうかは……どうしようね。

そんな感じで今日はおしまい。帰って晩ごはんに牛と野菜のオイスターソース炒め。ちょっと青椒牛肉絲風。適当だけど。胡椒よりも何か他のもののが良かったのかな。微妙に後味が微妙。

後は WWW 見たりゲームしたり本を読んだり。昨日ちらっとやってすぐ死んだアンドロイドの狂戦士が割と面白かったんで真面目にやってみる。「巻物なんて読めない」とか初めて見たわ。杖も巻物もさっぱり使えないから色々さっぱり。ただひたすらに近接攻撃が強いという。隠し扉は多分そこにあると思って穴を掘れ。罠ははまって踏み潰す。……狂戦士なんだか蛮族なんだか。

2012-04-06 01:28:26

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。穏かな天気だと素直に春っぽく。桜もだいぶ咲いてきてるし週末には満開近くなるところもそれなりにありそうかな。

細かいところを潰していきましょう、の続きで調べものから。ここが繋がってないとエラーになった上で、スイッチ切っても状態を保持してるっぽくそのままスイッチ入れ直すと再度のエラー検出はしませんっていうのをちょっと。エラーになる方についてはバイポーラトランジスタってどう動いたっけ、なんていうレベルで調べてみた結論として、繋いでないのとほんとにエラーになるのの区別は不可能ということになりました……ということでスイッチ切ったら一旦エラー消そうかという話の方へ。

エラー自体はスイッチ切った時点でクリアしてる。だから、再検出はされないっていう話になるわけだけど。何でそうなるかっていうと、static 変数のフラグで異常があったことを保存してて、これがスイッチ切ってもクリアされないから。このフラグ立ってるとそもそもエラーの原因を動かそうとしなくなる。で、このエラー、動かしてみようとしたけど動かなかった場合に動く信号を元に検出してるんで、動かしてみようとしない限りわからない。

サブマイコンのプログラムでは幾つかのモジュールをまとめて初期化してる。で、同じような感じでスイッチ切ったら再初期化したいモジュールっていうのはあるけど、全部初期化し直すのは良くないように見える。対 PC のシリアル通信とか、対メインマイコンの UART 通信とか。下回りのモジュールは何かあっても勝手に回復するからそもそも再初期化が必要無いし……ということで見た結果、今でもスイッチ切った時に初期化するようにしてあるモジュールに加えて、問題にしてるモジュール一つだけを更に初期化してやるだけで済むなっていう結論。結局、一行、そのモジュールの初期化関数呼び出しを加えるだけで出来上がり。これで思ったように動くね。裸基板での実験では必ずぴーぴー鳴くようになるけど。

この辺もうちょっと何とかした方がいいような、どうでもいいようななんていうのを調べてるところに、前に加えた A/D 値からの計算値を表示してるのはどれぐらい現実に合ってるんだろうという質問。入力二系統のうち、片方についてはずっと見てて何かそれなりっていうのがわかってる。んで、もう一方ではどうかというのを調べてみることに。出力側の制限に加えて入力側の制限もかかり易くなるはずなんだよね、こっちは。だから、適当に入力に繋いでる機器で制限を三段階ぐらい試してやって。

ログ取ってる A/D 値から計算した値をグラフ化してみる。うん、入力側の条件でデューティ制限がかかるとだいぶ計算値が暴れるね……出力側の条件だけしかかからない場合だとそれなりに安定してるっぽい。コンデンサ一杯付いてる回路の出力だし、そんなものか。……という資料と説明文をまとめてメールしたら今日はおしまい。

帰って晩ごはんに五目寿司ととろろ昆布のつゆ。ちょっと甘めだったかな。でもまあ、それなり。それで後は WWW 見たりゲームしたりで、大したことじゃないはずのところでうっかり死んでみたりして。ミミック部屋を大回りして避けてみたり、むしろ慎重って言っていい動き方だったはずなんだけど……何かログルス使いに一撃で 300 ぐらいのダメージを喰らったっぽい。うーん。

2012-04-05 00:49:12

今朝は晴れ……なんだけど、雲多いな。朝ごはんはパンとサラダとソーセージ。何かやたらと寒く感じるのはこのところあったかかったからだろうね。二月ぐらいに比べたらはるかにあったかいはずだし。

とりあえず昨日のをちょっと見直してもすぐにはわからなかったんで、すぐにわかるところを先に片付ける。ということでこのエラーには断続音使っておくべきでしたとか、サブマイコンで見てるセンサーの A/D 値をログ出力に足しておくとかそういうの。こんなのはとても単純で、さすがに困ることもなし。ちょっと考えたのは、A/D 値を読み出す関数どこに付け足そうかっていうのぐらい。

それで長時間の動作試験をしてるセットのログ取りスクリプトを一度切って再起動しておいてと頼まれてたのを片付けてから、結局放っておくわけにもいかないかとごみが表示されるのの調査へ。通信とキャッシュの関係を見ようとしたら、メインマイコンへの要求を限定した上でログ見たらいいわけだ、と思い付いたんで実験。結果、A/D 値要求してないとログが出ない。ああ、キャッシュがいじられてないとそっちが動かないようになってるのね。

応答を受信した場合にはデータ長が上書きされて、それでキャッシュが有効になるっていう形か……ということで初期化してるところでデータ長を適当に設定しておいてみた。そうしたら、設定する値が間違ってるせいか相変わらずログは出ないけど、表示にごみが出るのは止まった。……ええと?

キャッシュは壊れてないっぽい。まともに動き出した後はちゃんとした値しか出ないっていうのと合致してる。データ長が 0 のままの場合で何が起こるかっていうと、キャッシュされたデータへのポインタを返す関数が NULL を返してきて、その結果データをパーズして構造体埋める関数がエラーを返してきて、それで 0 表示をして…… return してないな。……そうしたら、そのままエラーになったから何も埋めてない構造体の値で計算した結果を 0 表示に上書きするわな。……ということで、return 足して回って解決。思い込みって恐いね、という結論。

調べてる間に break 足りないから全部のキャッシュエントリが要更新になってるわ、なんていうのを見つけたんでついでに直したりして今日はおしまい。午後になって日が差したせいかだいぶあったかくなった感じ。定時退社日だから早めに帰って、何となくお腹空いたんだよとポテトチップス食べたりして。で、晩ごはんは鴨汁のそば。山菜だったり若竹だったりという成分もあり。そんなだから具が多過ぎでお腹一杯だという。まあ、おいしいしね。

後は WWW 見たりゲームしたり唐突に眠くなったんでちょっと寝たり。シュロブもまあだいぶあっさり倒しておいて、鉄獄だの城だので 34、35 階辺りをうろうろする感じ。山にも行っておこうかね。でもスティング回収のクエストに行く気にはなかなかならないと。

2012-04-03 23:54:18

今朝はくもり。朝ごはんはパンとサラダとソーセージ。今日もうちの前の道を多数の制服姿が通り過ぎる。こんなに学生通ってたっけ、いつも? ……部活に入ってもっと早く登校するようになるから普段はもっと少なくなってるっていうだけなのかも?

これだと浮動小数点演算が入ってきちゃうよね、を修正。ついでに定数の畳み込みぐらいやると思うんだけどなとマクロをちょっといじったら計算結果も直った風。オーバーフローしてたか、もしかして。とにかく、目標の表示が出来るようになって一安心……はいいんだけど、スイッチをオンした瞬間の表示がおかしいのに気付いてしまったり。瞬間っていうには長いか? とにかく、始めの表示がおかしい。

初期化してないのかというとそうでもなさそう、何かで上書きしてるかっていうとそれもない。バッファオーバーフロー系を疑わなくもないけど、それにしては後になるとちゃんと表示出来てるのが妙。……という感じで色々実験しつつ悩んでみる。非同期メッセージを応答だと思い込んで使ってるっていう系統でもないし、キャッシュ不要とマークされてるリクエストの応答を間違って扱ってるっていうこともない。A/D 値のリクエストに対する応答をわざと無視してみてもキャッシュが書き変わってるみたいだから何かその辺りっぽくはあるんだけど。……で、結局、とりあえずごみが出るのは置いといて、出来てる分をコミットして known issue にしておこうかと逃げたり。飽きた……

で、ブザーを二種類ぐらい使い分けようよ、という方をちょっといじる。断続音と連続音ぐらいで十分っていう話で、既に仕組み自体はあるから実際に鳴らし始めるところだけ書き換えればいい。エラーを受け取った時に、今は断続音をスタートさせてるところがあるからそっちを連続音に、switch の中だから case をいくつか分けて、そっちに行ったら断続音をスタートさせるように。……うん、これだけでとりあえず大丈夫か。当初の目的は達成したと言えるでしょう。こんな大きな switch 使うぐらいなら配列にでもしてやりたくなるところだけど、メモリ足らないとかいう話もあることだから我慢しておくとして。

そんな感じで今日はおしまい。15:00 ぐらいの大雨もとうに止んでいい天気。ただ、風がだいぶ強め。地上レベルだと言う程でもないけど、音からすると上空はだいぶひどいっぽい。そんなことで JR も遅れてる中帰る。学研都市線が止まってなくて良かったわ。宝塚線が運休だからこの快速は京橋止まり、なんていう話はあったけど。

それで何となく寒いよねということで晩ごはんはおでんと冷奴。や、豆腐があるから……何となく思い付きでおでんにファルファッレをちょっと入れてみたら、思ったよりも思った通りの仕上がりになったりする。もうちょっと思いがけない悪さが出るかと思ったんだけど。……何を期待してるんだ?

後は WWW 見たりゲームしたり。城と鉄獄で 34 階まで降りてみて、反射の盾も手に入ったしアーティファクトな兜も使えるのを買えたしということでいい加減、25 階レベルのクエストは片付けようという気になる。で、ダークエルフの王のクエストに突入してあっさり勝利、と。ちょっと進んだな。シュロブにも挑戦してみようか、そのうち。

2012-04-03 00:21:11

今朝は晴れ。朝ごはんはパンとサラダとソーセージ。何かマンションの前を制服の集団が通り過ぎて行くのは何なんでしょう……って、まあ、新入生のオリエンテーションか何かなんだろうな。電車でもちらほら、そんな感じのが。春っぽい。

先週頼まれたからということで、ちょっと部品を交換してオシロスコープで観測しておくという作業から。こっちのやつのが余裕があるわけだ。わかってたことではあるけど。ものすごく余裕。で、その裏で、ログ取りスクリプトの様子見。とりあえずこれで大丈夫っぽいか。

昼休みが早くなったのはいいけど、人数減ったことでもあるしと四部だったのを二部にした割に食堂の人員は増えてないんでしばらくぶりの混雑に行列という感じだったり。その後、昼休み明けに打合せ。先週頼まれた辺りの課題について。ほんとに必要なのかとかそういうレベルで何か言うならメール来た時点でハードウェア担当と話して下さいよという気分になったりもしつつあれこれ。とりあえず、あんまり全体構成だのシステム設計……っていうかコンセプトに関わらない辺りのは実装しちゃいましょうかね、ということに落ち着かせておいて。

それで、7SEG LED の表示モードを増やしてっていう要望があったんでそこをごちゃごちゃと。case の並びがばんばん増える構成はちょっと嫌な感じだけど、元のコードを尊重するとそこに足すことになるわけで、とか。二モードでトグル、時間切れで元に戻るってなってたのを、多モードのサイクリックで時間切れなんてものは無しにしてしまえとか。基本も表示が通常時とエラー時で違うもんだからちょっとひねくれた細工を入れて出来上がり。適当な固定値表示で切り替わるし、勝手に消えないしというのを確認出来た。

それじゃあ中身もまもにしようかと手を付ける。外部機器との通信データから表示値を決めるモードはまあ簡単。値だけ表示するんだとどのモードにいるか見分け付かないけど、要求仕様で前に出てたレベルでは求めてなかったし、まあ、見せているって言われたら付け足そうかということで。A/D 値から物理値に変換して表示するっていう方でちょっと悩む。まあ固定小数点演算するしかないよね、でも係数を計算後の値で設定したくないな、と。

マクロで適当に計算値を出すようにしてみたけど何か変な気がする、っていうか変。計算前の値を表示してみたら、ログ出力に出てる A/D 値と同じ値になってるから計算が変なのか。直さなきゃな……というぐらいで今日はおしまい。今、これ書いててあれじゃ浮動小数点演算が入ってきちゃってるなっていうのに気付いたりもしたことだし、明日どうにかしよう。

それで帰って晩ごはんに豚汁うどんときゅうりの塩もみ。塩もみだと何かきゅうり少なく見えるな、と結局一本使い切ったり。うどんを茹でるのに何かのりでお湯に塩を混ぜてしまった。パスタじゃないんだから、しょっぱいって。幸い、そこまでひどく塩辛いっていうことはなかったけど。

後は WWW 見たりゲームしたりで。城の 32 階まで降りました、で終わる感じ。収穫が乏しくていけない。

2012-04-02 01:30:34

今朝はくもり。朝ごはんはラムと豆のトマトソースでファルファッレ。何か久しぶり、ファルファッレ。ちょっと遅いけど梅林でも見に行こうかという気が昨日はあったものの、どんよりした様子にさっくりやる気が無くなってだらだらした後、寝てしまう。何か眠かったし。

夕方起きて買い物へ。ついでに古本屋に寄って、それで帰ってきたら晩ごはんと。安易なアマトリチャーナで落ち着いた後は WWW 見たりゲームしたり、だらだらの続き。

城の 30 階ぐらいまで行っておこうかと思ったけど、28 階で嫌な感じの群れがあったんで、荷物も一杯だことだしと逃げ帰っておしまい。ヴァンパイア、マスターヴァンパイア、星の精相手に一杯一杯なところで起きたレッサーウォールモンスターの増殖でろくにアイテムの回収も出来なくなって、そうこうしてる間に壁が無くなってこっちが見えるようになったキリスウンゴルの番人が召喚ばんばんっていう絵が見えちゃうと、ねぇ……

2012-04-01 02:12:35

今朝はくもり。朝ごはんはプッタネスカ。今なら降られる前に移動出来るかな、というタイミングをつい遊んでて逃してみたり。これぐらいなら傘はいらないけど、と思いつつも結構濡れる。

で、地下鉄で恵美須町に出てコンビニに寄ってみたりウィンドウショッピングだったり。そろそろ買い替えてもいいんだよな、ノート。別段問題無く動いてるもんだからあんまりその気にならないわけだけど。日が差してるぐらいだからまあ雨は止むでしょうと思ってた通り、屋根の下から出ざるを得なくなる頃にはいい天気っぽく。でも昨日と比べると寒く感じるわね。比較対象が悪い?

本屋で本を一冊とまんがを一冊買ってゲームしに。2 credits 設定だとどうも気が抜けるような気がして、と思いつつも一応クリアは出来た。間抜けなやられ方をしてたけど。それで 2 credits 目でマニアックモードをいつもと違う子でやったら 1 面もクリア出来なかったりして。ここまで性能違うんだったっけ……それからレベル 15 でぼろぼろ墜ちた日にはどうしてくれようという感じだったけど何とか 1 credit 目で実戦まで出られた、というのがハイライト、な感じとか。

コンビニと古本屋に寄って、帰る途中で海鮮焼きそばと餃子。ラーメンでも食べようと思ったんだけど、入った店が思ったよりはるかに真っ当な中華料理屋やってん……なかなかおいしかった。昨日の今日でまた餃子っていうのはどうなんだとかいう話は気にしない。昨日のはもちもちしたので、今日のはぱりっとしゃきっとというのだから食感だいぶ違うし。

それで帰って WWW 見たりゲームしたりまんが読んだり。とりあえず鉄獄と森で 30 階とちょっとまで潜ってみた、だけ。シュロブ戦はまだ早いかとか思うと、今度は城にでも言っておこうかね?

2012-03-31 01:06:17

今朝は薄ぐもり。朝ごはんはパンとサラダとソーセージ。だいぶあったかい。何かいきなり春らしい。

メインマイコンからの非同期なエラー検知とエラーキャンセルの通知を PC にスルーしてたのが止められて、今はそこのログに意味が無いっていうのに対処。コンパイルオプションでスルー機能を切った時には、サブマイコンで持ってるエラー情報を返してやることにしましょう。ということで、何でこんなコードにしたんだろうとか、このファイル二つ、多分実験する時に切り替えてるんだろうけど生きてるのどっちだっていうか Subversion 使ってるんだからブランチ切りなさいよそんなのとかでちょっと悩みつつあれこれ。

エラーレポートはメインから勝手に飛んでくるものだからこの仕組みに乗せる必要なくてキャッシュもいらないとかしてから、PC からの実験ログ取り用コマンドの処理でキャッシュ使わない場合という枝を作って返事を出すようにして出来上がり……のつもりがそもそも 7seg の表示すら出ませんよ……って、プログラムライタ繋いだままだったわ、なんていうのの後で確認。まあとりあえずいいか。

……と思ったけど、PC 上のログ取りスクリプトでエラーが出る頻度がえらく上がってる。これはまずいんで調査開始。何がエラーを引き起こすかって、変なものが届いた時の処理が無いからなわけだけど……はともかく、その変なのの内容がサブマイコンが返してる非対応コマンドエラーだったりするのだね。ログ取得用のコマンドって全部 1 byte で投げてるのは対応してるのだけだからあり得ないんだけど。で、しばらく悩んでみたり、エラーを投げる代わりにマーカーと受信したコマンド投げ返すようにしたりした結果、たまに二つのコマンドが繋がって見えてることがあるのがわかる。

つまりはこの、手抜きコマンド処理が悪いのよねとちょっと直し方を考えて、一旦元のコードに引きずられて妙な解決策を取りそうになりつつも、素直にコマンド区切りで読み出すようにしたらいいじゃないという真っ当な方向に落ち着く。元のコードがコマンド間に十分な隙間がある想定で、一度に読めたバイト数全部を一つコマンドとして扱ってたから二つ繋がったりするわけで、1 byte 読んで 1 byte コマンドならそこで終わり、もっと長いコマンドの場合はヘッダ長わかってて、ヘッダの中にペイロードデータ長が入ってるということで必要なだけ追加で読み込むっていう……むしろ何で最初からそうなってないんだという話。

これでだいぶエラーは減ったけどまだ出ることは出る。何で出てるのかと思ったら、何かスクリプトの方で余計なバイトをどこからか読み出してる風。さっぱり意味不明なんで、ちょっと前に IO#read_nonblock が動かないから IO#readpartial に切り替えてみたりしたっけな、とログ取得スクリプトを書き換えてみたらこっちの方が安定してるっぽい。ぽいだけで根拠無いけど、もうちょっと長いこと置いといてみて確認しようかな。サブマイコンプログラムの方では特に余分なバイトを投げそうになくて、スクリプトの方で 2 bytes 読み込むって言ってるところで 4 bytes とかもうちょっととか読めちゃってるからスクリプトの、というか Cygwin 上の Ruby の問題っぽいし。

エラーキャンセルのレポートの方にはとりあえず、新しくエラーコードがセットされる時に前のコードを保存しといてそれを投げるようにしてみた。ちょっと意味が複雑になるけど。でもリクエスト-レスポンスで時刻情報自体はデータに載せてないということだととりあえずこれぐらいが関の山でしょうという。その関の山が当初ちゃんと動かなかったりしてたわけだけど。エラーをクリアする関数っていうのが思ってたよりも高頻度かつ無条件に呼ばれてたんで、ログデータ取得のコマンド処理タイミングでは常に前のコードは 0 ってなってた。しょうがないからエラークリアの時は、0 でないコードの場合のみ保存するってしたけどこれ、ますます意味が複雑になるな……

そんな感じでおしまい。これもまあ、トリビアルなはずの修正にえらく手間を取られた感じ。うーん。まあそれはともかく夕日がきれいね、なんて思いつつ帰って晩ごはんに餃子と酢の物とみそきゅうり。きゅうり食べ過ぎ。おまけに晩ごはん前にブリーを一つ食べてたりもするんで単に食べ過ぎという話もある。餃子も大粒で 14 個とかだし。でもおいしいからいいんだよ?

後は WWW 見たりゲームしたり。ダークエルフの王のクエストはばんばん寝てる子起こしてしまう状態で踏み込むにはまだ弱い、ということでとりあえず 25 階まで降りてみてから森に行きましょう、という感じ。面倒臭いよね、森……

older <-

goto

hint can be:

Tags

old

2007-05 -- 2006-12

ゲーム関係の古い記録

before 2005-12