2016年1月31日の日記を表示中
2016年 1月31日 (日)
■基板
今日はTL866CSでTSOPのFlashを読んでみたいと思います。
とりあえず読みたいのはSPIマザー搭載のLH28F008SAT。こいつを読むには、先日パターンの破断が確認された変換基板を使う必要があります・・・と思っていたんですが、よくよく確認してみたら、どうやらそうではなく、もう一方のTSOP40Aの方を使うのが正解な模様。なんだ、一安心じゃん。
変換基板にピンをはんだ付けして、ソケットと合わせてみました。
さあ、読むぞー。
って、チップIDがまともに読み出せませんね・・・。チップIDのチェックをスキップして中身を読んでみると、All 0xFFが返ってきました。まあ、SPIでFlash ROMを書き換える際に、最初に全体をEraseしてるはずなんで、普通かとは思いますが。が、困ったことにProgramも1Byte目でエラーが出て弾かれます。書いたはずの値がまったく書けていない状態のようです。うーん、Flashが悪いのか、ソケットの組み立てミスってるのか、どっちだろう・・・。
もう1枚の方も剥がして読んでみましたが、結果は似たり寄ったり。正確には、こっちからは0xFFではない値が読み出せはするんですが、アドレス線の一部が死んでるのか、32Byte中の前半16Byteと後半16Byteが常に同じ値の状態。そしてEraseは全然終わる気配なし。うーん・・・。
ひとまず原因を切り分けるために、もう少しちゃんとしたTSOPのFlashを読んでみることにします。マイドリームホース。
マザーボードに直付けされているプログラムROMを・・・。
こんな感じで剥がします。
今度はどうだ・・・?
吸えた!そして中身もダンプ済みのデータと一致・・・してないorz。が、比較してみると、違うのはほんの数Byteのみ。位置的に、何となくシリアルナンバーっぽい感じです。MAMEのソースを見ると、シリアル番号がプログラムROMに埋め込まれているとか書かれていたりします。これがそれってことなのかな。
何度かVerifyした後、一旦Eraseして、再度同じデータを書き戻してみましたが、特に問題なし。なるほど、アダプタ自体は問題なさそうですね。つまり、まずいのはSPIマザーにのっていたLH28F008SATということか。くそー。というわけで、交換用にeBayでE28F008S5を発注しました。今回は北米からです。ほんと欲しい部品、日本にないですね・・・。
さて、無事TSOPの変換アダプタが正常だということもわかったので、先ほど外したTSOP40のFlashを元に戻したいと思います。ネットでよく見る方法ですが、フラックスを塗布した後、ブリッジを気にせず、はんだを盛り付けていきます。
で、その後、はんだ吸い取り線でブリッジを解消したらできあがり。
ルーペでブリッジがないことを確認して通電したところ、特に問題もなく動作してくれました。初めての挑戦でしたが、こんなにうまくいくとは。よし、これでさらに色々幅が広がるぞ。
次に、ゲームオーバー時にリセットがかかるてんこもりシューティングについて調査。実は先日正常動作品を入手することができたので、正常品と部品を交換して、どこに原因があるか絞り込んでみました。その結果、衝撃的な事実が。何と、ROMボードを交換したら不具合が解消。マザーボードのプログラムROMが腐っているのかと思ってたよ。
おそらく、ゲームオーバーのロゴ(テクスチャ?)のデータを読みに行って、変な値が返ってきてクラッシュしているとかなのではないかと・・・。で、どのROMがおかしいんだろう・・・。
MAME上で、ゲームオーバーのタイミングで DMAしているデータを見るに、0x006CA4A4とか0x006B8BE0あたりが怪しい感じ。そこで試しにここを0xFF埋めしてみたところ、見事に再現してくれました。つまり、SOP44の64MbitのROMのどっちかがおかしい可能性が高い、と・・・。
さて、本当にこのROMがおかしいのかどうかは、ROMを吸ってみないとわからないわけですが、さすがにTL866CSもこのサイズには対応していない模様。何か細工しないとだめそうですね。というか、刻印がなくて、今載ってるもの自体の素性もよくわからないんですが。沖のMR27V6402Dとかなのかな?そして、仮に原因が特定できたとして、次に、このマスクROMの代替品は存在するのかという問題も。はー、困ったな。
■地球防衛軍4.1
エアレイダーでもちょこちょこ遊んでみてるんですが、レンジャーやウィングダイバーと比べると、どうにもイマイチな感じが・・・。同じように戦っちゃいけないんでしょうけど・・・。
[コメントを書く]
■8BIT MUSIC POWER
[コメントを書く]
2016年1月31日の日記を表示中
[コメントを書く]