SVX日記
2007-01-19(Fri) NASと刺し違える
先日からNASをイジりまわしているが、今日は前面にハメ込んであるLCDパネルをその筋するのである。まずは、脇にある「PRG JP」と書いてある部分のピンアサインを調べる。間違いなく、LCDパネルを制御しているのは載っているPIC16F628Aであり、「PRG JP」はインサーキットプログラミングするためのジャンパに違いないのだ。
搭載されているPICはSSOPパッケージであり、ピンピッチ0.65mmなので、テスタで導通を調べるのもそれなりには大変。えーっと「RPG JP」と読める状態で、一番右から「15, 16番ピン、5, 6番ピン、4番ピン、14番ピン、13番ピン」と、敢えてPICのピンアサインを知る前に調べる。で、答え合わせ。「Vdd, Vss, Vpp, PGD, PGC」。こりゃ、ビンゴですな。
次は秋月のPICプログラマのピン配置を確認。ICクリップを持ってきて、該当する場所と各ピンを接続する。なんだか、かなりコンジェスチョンな状況になっているが、ファームを吸い出す一瞬の作業の間だけだからこれでいいのだ。イザ、吸出しッ!!
なんだか、PICの種類が違うとかいうようなエラーが出たが、見慣れた「System starting.Please wait.....」という初期メッセージも見えるし、どうにか吸い出せているようだ。すかさず逆アセンブラ代わりのPICシミュレータにかけてニーモニックに変換する。
オイラは日頃、PICのプログラミングをZ80ニーモニックで行っているので、PICニーモニックのままでは意味がスッと頭に入ってこない。そこで、PICシミュレータ上のPICニーモニックを、Z80ニーモニックに変換しつつ、エディタに打ち込みながら動作を理解する。ふむ、ふむ、ふむんッ!! しかし、やってることはリバースエンジニアリングに他ならないが、Z80ニーモニックまで変換してしまうと、権利の所在はどうなるのだろう……とか、考えつつ、解析完了ッ!!
ボーレートは9600bps、キャラクタコード1〜6を受信すると特殊動作(表示クリア等)で、それ以外はそのまま出力……って、あ、あれっ!? じゃ、なんで前回「echo hoge > /dev/ttyS1」したとき出力されなかったんだ……