2016年3月6日日曜日

VAIO PCG-C1VRX/K のFB設定

先日、ボロVAIOでtrusty non-pae を使ってみたが、その時FrameBufferが正しく動作しなかった。
Lbuntu11.10をInstallしたのは、もう4年以上前の事だ。その時にもFrameBufferが正常に動作せず、苦労をした。
その頃のメモが発掘された。
こんなページが全部で10ページぐらい続いている。

見ているうちに色々思い出した。
Kernel logを見たり、atyfbを改造して内部変数の内容をklogに出させたりして、情報を収集し、それらを1つ1つ検証している。FBドライバには、垂直同期割り込みを利用する機能があり、atyfbでもそれが使える。それを利用して垂直同期周波数を計測したりもしていた。
ドライバのソースも、2.4と、3.0の両方を追いかけ回して、内容を把握して、意味的に同じになるように改造したのだった。

そして、肝心の画面モード設定についても思い出した。
値は、どこかから入手する必要はなく、BIOSから読み取った値を使えば良かったのだ。

ノートのメモ(まさしく上記見開き)の、左下には"BIOS contains drivers information table:"の行がメモされている。
このメモは、kernel logを書き取った内容だ。
そのつつきが、右上の方に書かれている。そこに"LCD CRTC parameters:"の書き込みがあり、この数値は実際にBIOSから読み取られた内容から作られたものだ。
右下の方の部分は、これを調べた時の個人的な考えで、正確な内容ではない。
同期が外れて、LCDの表示が止まってしまうのは正しいが、パラメータや設定は全て正しく、ドライバを改造することで正しい表示となるのだ。

そこまでは思い出したけど、細かいことがさすがにもやっとしている。
これらメモの内容は、どういう時にkernel logに記録されるのかと、ドライバのソースコードを確認する。 atyfb_base.c/init_from_bios()を見ると、"BIOS frequency table..."メッセージ表示後に、aty_init_lcd()を呼び出しており、その中で、BIOSシグネチャを確認して、期待される値なら、"BIOS contains drivers..."や"LCD CRTC parameters..."が表示されるはずであることがわかった。

表示されれば、BIOSパラメータが使われるはずだ。
ではなぜまともに動かないのか?
Trusty VAIO-C1では、同表示されているのか?と思って見たら、"BIOS contains drivers..."や"LCD CRTC parameters..."が、なんと!表示されていない。
これが表示されないとすれば...BIOSシグネチャ?
自然にBIOSが消えてしまうなんて経験はないが、Flashメモリはいつか消えてしまうものだ。
購入後、16年。そろそろヤバイのかもしれないと思い、BIOSをリフレッシュするために書き換えてみようと考えた。

しかし古すぎるVAIO。BIOSの更新ファイルは入手できるだろうか?
ネット上を探してみたが、見つからない。
いろいろ探してみたら、CD-ROMが発見された。そのCDはVRX/K購入から数年後、VAIOサポートが有料で提供していたもので、それまでの更新をまとめたものだ。ひどく忙しい時期だったので、有料でそれらをまとめてくれているなら助かると思い、買ったのだった。
今まで1度も使ったことがなかったが、ここまで時間が経過してから使うことになろうとは思いもしなかった。

CD-1/2の中の"BIOS_R0213P1.exe"と"BIOS_WXP02P1.exe"がBIOS更新のためのファイルだ。
R0213P1はリカバリ用で言うならばWindows2000用、WXP02P1はWindowsXPを使う時のためのものだ。
これらは自己解凍書庫で、展開して、中にある"crisdisk.bat"を実行し、FDを作る。
全く使わなくなっていたかなり古いWindowsPCで、Windowsを起動して、FDを作った。
FDDはVAIO用のUSB接続のもので問題なかった。
ディスケットは、以前使用していたVine Linuxのboot-diskを潰して作った。
(ウチにはまだ未使用の3.5"FDが5枚ぐらい残っている。一度使ったものは数十枚ある。)
なんとか作ったFDで、早速BIOSを更新した。
(更新後FDイメージを取り出し、Linuxで同じFDが作れるようにしておいた)
更新ついでに、Windows2000をリカバリしてみたくなった。
どうせlinuxはまだまともに動作しないので、一旦消してCDでWindowsをリカバリする。
久しぶりにVAIO-PCGC1VRX/KでWindows画面を見た。セキュリティホールも開きっぱなしなので、ネットには接続しないで、少し使ってみた。この機械でも充分にGUIが使える。Windowsもこの頃のものはとても軽い。

途中ですっかり脱線してしまった。
FrameBuffer設定のやり直しは、また次の機会に。

わざわざ紙にメモをしていた理由は、その数年前にPCがFreezeすることが多かったためだ。Freezeすれば電子文書はアクセスできなくなる。紙なら、電源喪失でも、PCがbootしなくても読める。
1日1時間程度の作業で、PCがFreezeしたせいで30分も無駄になれば、作業効率はガタ落ちだ。昔ながらのローテクはいざという時でも使えて、意外に消えにくい。写真以外のページにも、貴重な情報が大量に書かれている。メモ書きも多く、意味がわからないのもあるけど…。しかし、読み進めていくうちにいろいろ思い出す。
文字の丁寧さや汚さも、また記憶を呼び起こすきっかけになる。
今回、設定値を記録し忘れていたが、記録する必要が無いことも思い出した。
少なくとも、以前はBIOSからその情報が読み出せたのだ。それができないのが問題であり、それを何とかすれば、すべてうまく行くだろう。
その方面で、調査を続ける。

0 件のコメント:

コメントを投稿