bregonig.dll の動作を確認したところ、バグが再現した。近いうちに修正版を出すか。
最近、ワイヤレスマウスの動きが急に悪くなることがあり、原因を調べていた。しばらく前に、レシーバーの位置を変えたのでそれが原因かとも思ったが、そうではなさそう。色々試していたところ、別のノートパソコンで大量のデータを無線 LAN を介してコピーしているときにマウスの動きが悪くなることに気付いた。どちらも 2.4GHz 帯を使っているために干渉してしまったようだ。先日買い換えた無線 LAN ルーターの電波が強すぎるのだろうが、どのように対策すべきなのだろうか。
HDD 交換の続きを行うことにした。パーティションのサイズを変更したかったので、ディスク単位のコピーではなく、パーティション単位でコピーを行うことにした。コピーツールをいくつか試してみた。最初に試したのは、DriveImage XML 2.13 だったが、200GB のコピーに 12時間掛かるとの表示が出た。あまりに時間が掛かるので、途中で諦めた。次に、EASEUS Disk Copy 2.3 を試してみた。わざわざブータブル CD で起動する必要があるのと、パーティションサイズの変更ができないのが面倒だ。200GB のコピーには 2時間半くらいと出たが、途中でやめた。最後に、Partition Wizard 4.2.2 を試してみた。Windows から操作でき、コピーと同時にパーティションサイズの変更もできるのが便利だった。コピーに掛かった時間は、2時間半程度。
パーティション単位のコピーの場合、ディスクの署名がコピーされないが、どうなるのか気になる。ディスクの署名がどこに書き込まれるのか調べてみた。ググってもどこに書き込まれているかの情報が見当たらなかったが、MBR のオフセット 1B8h からの 4bytes がディスクの署名のようだ。(PC-98 の場合については未確認。) 元の HDD から署名をコピーしたところ、システムドライブの移行が無事完了した。
この前壊れた WN-G54/R の様子をもう一度確認しておこうと思い、電源をつないだところ、AC アダプタからバシッと異音がした後、焦げ臭いにおいがしてきた。AC アダプタを分解してみようとしたが、簡単には開かなかった。これ以上の調査は諦めて、廃棄することに決定。
ファンが壊れた 400W の電源と、買い取り拒否された 350W の電源は廃棄することにした。もう1つ 400W の電源が余っているが、買い取りに出すか?
bregonig.dll にバグが見つかったようだ。正確には、bregonig.dll が利用している鬼車のバグのようだが。再現性はまだ確認していない。できるだけ早く確認して直したいところだが、なかなか時間が取れない。
電源を交換するために、久しぶりに PC を分解した。かなり埃がたまっていた。電源のファンの状態を確認してみたところ、グリスが切れたのか、固くてほとんど回らない。CPU ファンの状態も確認したところ、こちらもまともに回っていなかった。チップセットに付けたファンは、まだ問題なく回るようだが、想定されている製品寿命は超えている。電源だけの交換予定だったが、他のファンも交換することにした。
CPU ファンは S-FLEX 1500rpm を買った。チップセットのファンは前回と同じ CF-45SS。45mm のファンはこれぐらいしか見あたらない。壊れた剛力 400W は、電子回路はまだ生きているようなので、ファンが見つかれば交換して延命させようかとも思ったが、135mm のファンが全く見つからなかった。
使っていない 350W の電源が見つかったので、買い取りに出そうとしたが、400W 以上でなければ買い取れないと断られてしまった。3年半前の時点で買い取りに出しておくべきだったか。他にも使っていないパーツを 3点買い取りに出したが、\250 だった。
電源交換のついでに、HDD を交換することにした。半年ほど前に買った 1.5TB の HDD が未使用のまま放置されているのだが、それを搭載することにした。
現在の HDD の構成は以下の通り。
1台目: 250GB 2台目: 320GB 3台目: 1.0TB
2台目を 1.5TB に交換し、余った 320GB を 1台目と交換する予定。1.5TB への交換は完了したが、1台目の交換はデータ移行の時間が足りず、続きは次の休みに行うことにした。
3年半前に買った PC の電源から異音が出ている。ファンが寿命のようだ。鎌力4プラグイン 450W を購入。このところ、電源は Scythe ばかりだ。
新しい電源を買ってきたものの、交換する気力がなかったので今日は放置。うるさいのは次の休みまで我慢しよう。
Thunderbird 3.0 をインストールしてみた。検索用のインデックスの作成に数時間かかった。メールヘッダのボタンがちょっと邪魔だ。CompactHeader をインストールしたところ、すっきりした。
自分が作ったアドオンが動くかどうか試してみた。1つはバージョン番号を書き換えるだけで動くようになった。mailkey は、簡単にはいかないような雰囲気。メールをスペースキーで読み進められない問題は、相変わらずそのままだった。
ばらした WN-G54/R の写真を撮ってみた。
まずは基板全体。
メインチップは、Marvell の 88W8510 (Internet Archive) というチップだった。CPU コアは ARM9 が載っているらしい。隣の2つのチップは DRAM とフラッシュメモリ。フラッシュメモリに貼ってあったシールは、型番を見るためにずらしてある。右側には JTAG 用と思われるランドが並んでいる。
問題の半田不良部分。どう見ても線がつながっていない。
4年半前に買った無線 LAN ルーター (WN-G54/R) が壊れてしまった。ステータスランプが異常を示したまま、全く反応がない。どうせ修理などできそうにないが、一応ばらしてみることにした。動作しない原因は分からなかったが、別の問題を発見してしまった。買ってからずっと、無線 LAN のつながりがよくないのが気になっていたのだが、アンテナ線がつながっていなかった。今までずっと PC 側の感度が弱いのが原因だと思っていたが、それが主原因ではなかったことが分かった。
代わりの無線 LAN ルーターを調達。GbE 対応で一番安かった CG-WLR300GNH を買った。今回は 802.11n 用の子機は買っていない。現状の 11g に不満になったらそのときにでも買おう。その頃には、300Mbps 対応の子機で、もっと小さいものが出ているかもしれない。
設定を終えて、インターネットにつなごうとしたら、PPPoE の認証に失敗。プロバイダの技術サポートに電話すると、パスワードが間違っているとのこと。パスワードを変更した記憶はなかったのだが・・・。顧客サポートに電話して、パスワードを書面で再発行してもらうようにとの指示だったため、顧客サポートに電話したところ、他にインターネットにアクセスできる環境があれば、Web 上でパスワードを変更できると言われた。最初からそう言ってくれればよかったのに、電話のやりとりだけでかなり時間が掛かってしまった。携帯電話でダイヤルアップ接続して無事にパスワードを変更できた。
PPPoE の認証は無事通ったが、今度は DNS が通らない問題が発生。デフォルトの DNS サーバの代わりに、今話題の Google DNS の 8.8.8.8 を指定してみたりもしたが、状況はあまり変わらず。数時間の格闘の後、何かよく分からないうちにつながるようになった。同じようなトラブルは他でも発生しているようで、Blogs 2104: 11月 2009 によると、マルチ AP の解除で状況が改善したとのこと。しかし、マルチ AP をオフにしても、さっきは状況は変わらなかったのだが・・・。
Perl 以外のスクリプト言語だと、どういう方法で DLL を呼び出せるのか調べてみた。
ANSI/Unicode、stdcall/cdecl、32bit/64bit などの使い分けが容易にできるものとなると、どれがよいのだろう。
少し前に、Google が Go というプログラミング言語を発表したが、よく似た位置づけの言語として、D 言語があったということを思い出した。久しぶりに D 言語を試してみた。最新の v2.036 で、何もしないプログラムを作ってみたところ、実行ファイルのサイズが 200KB を超えている。以前試したときに比べて、3倍近くに肥大している。コンパイルが早いため、スクリプトを書くような感覚で小物ツールを作るときに使いたいと思ったりするのだが、このファイルサイズはちょっと気が引ける。
自作 DLL の API の動作を確認する際に、スクリプト言語でテストプログラムを書けないかと思い、少し調べてみた。Perl ならば、Win32::API を使うことで、stdcall と cdecl のどちらでも API の呼び出しができることが分かった。構造体の扱いが少し面倒か。64bit 整数はどうやって扱うのだろう。
先月の spam メールの集計結果。着信拒否にならなかった spam が少なくとも 1621通。そのうち、@nifty の迷惑メールフォルダーでも Spam Mail Killer でも spam として認識できなかったものが 1通(0.06%)、誤削除が 1通。誤削除は復活できたので実害はなかった。