
やはり歳を取ったせいか、徹夜続きだとかなり応える。。今日は起きたら昼の2時過ぎだった。
さて、前回のブログの続きになるが、どうやって通信ボーレートの解析をしたのかを書いてみたい。
昨日の昼に部下が顧客の報告をしてきた時のことだ。「SSHで接続してログを確認しました…」SSHなんて毎日聞き慣れている言葉なのだが、その時だけはふと何かで聞いたことがあるような、もしくは見たことがあるような気がした。なんのことだったっけ?なんて考えていたら、以前ラジエターファン・コントロールで使おうと思ったソフトウェアの名前だったということを突然思い出した。
そのソフトウェアとは「Dissh」というフリーソフトウェアである。正式名称は「SH CPU DisAssembler Ver 0.3」というものだ。Vectorにあるのですぐに見つかるはずである。
使い方はとにかく簡単である。「Dissh」を適当なディレクトリに展開して、DOSコマンドで実行するだけである。ほぼ一瞬でディスアセンブラしてくれ、ファイルに展開してくれる。下記は使用したコマンド例だ。
コマンド例:dissh -r legacy.bin disas.asm
オプションの"r"スイッチだが、ディスアセンブルしたファイルに命令の解説表示をしてくれるものだ。後はROM名とディスアセンブルするファイル名を指定するだけでOK。ちなみに自分のROMは512KBだが、オプション付きでディスアセンブラしたファイルは約10MBになった。(前回は間違ってオプション無しの画面を掲載したので、今日はオプション付きの画像にしてみた。)
ディスアセンブルした後は、そのファイルをテキストエディタ等で開いて、調べたいワードを検索するだけである。今回はRomRaiderにディスアセンブラした画面があったので、「FFFFF011」で検索してみた。ヒットした後はその画面とヒットしたワードの前後を調べただけだ。
これで目的のアドレスが分かれば、次にバイナリエディタでROMを開き、アドレスに対応した値を変更するだけである。
それにしてもこの「Dissh」だが、命令の解説表示が付けられるのはかなり有難い。これで他の項目もいろいろと調べられそうだ。
Posted at 2008/09/27 20:37:42 | |
トラックバック(1) |
ECU関連 | クルマ