かれこれ何年も使っていないのだが、久しぶりに思い出して引き出しから取り出してみた。うん、やはりビネガーシンドロームになっている。
この機体はバックライト改造していて液晶裏側の反射フィルムを剥がしているので、ビネガー発症前からコンストラストには難があった。今回は表面の偏光版が発症しているのでネット記事を参考に分解せずに偏光版を剥がす。作業は15分程度で完了した。
いつかこんなこともあろうかと、ビネガー発症前から手配していた偏光版を角度を調整して切り出すという先人たちの事例をトレースし、とりあえず見えるようにはなったが…。オリジナルの表示とは程遠い。どうも偏光版自体の着色が濃く、相当に見えづらい液晶になってしまった。偏光版を入手するときに、HP200LX修理の定番であったハンズ製のものが入手できず、代替品をぽちったのが失敗だったかなと軽く後悔する。
それでは視認性の向上のため、ハンズの偏光版を入手…でもよかったのだが、ある考えが頭に浮かんだ。
液晶ディスプレイ自体を現代の製品に置き換えられないか???
HP200LXの液晶ディスプレイは配線数から想定して8bitパラレルだと思われる。このパラレルデータをいったんRP2350などに入力して、ディスプレイ信号を現代の液晶ディスプレイ用に変換して出力すれば、フルカラーは無理だとしても青一色とか、オレンジ一色とか、レトロPC的ないろの再現はできるのではないか。
というわけで調査を始める。プランは大雑把に言ってRP2350でHP200LXのディスプレイ信号を横取りし、適当な液晶ディスプレイに画像信号を再出力させる。RP2350に搭載されているPIOモードは、パラレル信号をダイレクトに受信できるモードで、これを活用したロジックアナライザなどの作例も見つかることから、高速な信号変換には向いていると
HP200LX — RP2350 — TFT LCD
HP200LX側の最大リフレッシュレートが正確な情報がなく不明なものの、せいぜい60fpsくらいだろうと仮定して、640×200のデータをパラレルで送信したとすると、
16,000 バイト×60 fps=960,000 バイト/秒 (≈937.5 KB/s)
RP2350なら余裕そうな気がしてきた。HP200LX側の信号レベルが不明だが、3.3VならRP2350のGPIOに直結できる。5V出力ならレベル変換必要になるが、HP200LX側がパラレルなので抵抗分圧でも十分かもしれない。
次にRP2350側の信号変換処理だが、8bitパラレル信号のほか、クロックピクセル、水平同期信号、垂直同期信号あたりの波形を観測できればループで回すだけでHP200LXの出力映像を再現できるかな。あとは現代の液晶ディスプレイに出力。
現代の液晶ディスプレイを吟味してみたが、オリジナルの640×200ドットという解像度の製品は見つけられなかった。長辺も短辺も640×200を上回る解像度で、かつHP200LXのオリジナル液晶(140x62mm)よりも物理的に小さいサイズの製品を検索したところ、
480*854 解像度 RGB インターフェイスカラースクリーン Arduino 用
というのが見つかった。サイズは物理サイズは117.2×61.98mmとなっており、既存のディスプレイ設置スペースにすっぽり収まるうえに23mmほどマージンがあるので、ここにRP2350を設置できるではないか。
次の問題はピクセル数の差異。横640ドットに対して854ドットなので、214ドット余らせてレターボックス風に表示させるか、オリジナルの640ドット表示を引き伸ばして854ドットに拡大させるか。さすがに整数倍とはいけず、1.33倍になる。
縦で計算すると、オリジナルの200ドットを480ドットになるので、2.4倍。つまり1ピクセルの見た目が13:24になるので、だいぶ縦長のフォント表示になりそうだが、現代のディスプレイならバックライトは標準装備だし、視野角も十分に広くなっている。むしろ視認性は抜群に向上するのではなかろうか。
あとは実物を見てみないとなんともなのと、電力の問題。いくら最近の液晶ディスプレイが小型デバイス向けに省電力化されてるとは言えども、HP200LXの電源では不足するのではと思う。下手したら3時間ほどしか持たないかもしれない。
そうだとしてもロマンの領域。実用の域を超え、古のヴィンテージモバイルPCのディスプレイを現代のカラーディスプレイにリプレイスできるかという技術的興味でしかないが、やってみる価値があるのではないか。
さて、ロジックアナライザを出してこよう。


