2018年6月13日水曜日

飛翔鮫・修理(もうちっとだけ続くんじゃ)

遊幻さん@ヤフオクにてジャンクの飛翔鮫(伏せ字IDバレちゃう……)を入手。わりと簡単に治せると踏んでたんですが……ちょっと手こずってる。気力が続かないし、次に時間できるまで少し間が空きそうなので、軽くメモを残しておこうかと。

元の状態はオークションの写真の通り。BG面は正しく描画されてるっぽいけど、スプライト面がゴミまみれ。というかハード性能以上の枚数スプライト出てる(笑)

で、基板を見ると……


ガッツリ修理跡。しかもハンダ面めちゃくちゃ汚い。SRAMは2面対になっているうちの1面がソケット化されてて、しかも刺さってるやつオリジナルは120nsなのに200nsの遅いやつ。これは勝ったか!と思って120nsのやつに差し替えてみたけど世の中そんなに甘くない。症状かわりませんでした、残念。そのくらいは遊幻さんでも試してそう。ちなみに後に調べた感じだとこのSRAMx2はオブジェクトRAMっぽいですぞ。スプライトのパタン番号や座標なんかが出てきてる。

そしてこの頃、nosuke様の俺基板(いた)本がBEEPに再入荷してたので、先人の知恵として有り難く購入。
ロジックICも壊れるんだ、つらそー……とか他人事のように思いたかったんだけど、SRAM以外にもロジックIC何個か交換されてて。前のオーナーが怪しいと思って修理した箇所か、壊した箇所のいずれかだろうと。自分も先人に習って周辺のロジックを疑ってみる事にしました。
まじかよーって感じでインバータが壊れてた。なんかこういう故障モードは学生実験でトランジスタ描いてSPICE回してた頃に見たことあるような気がするけど、波形が鈍ってたり電源足りなかったりとか、あとゲート壊れかけてたり?そっちはあまり得意じゃなかったから自信ないけど。
って事で、スプライトは表示されるんだけど、何もないはずの後方位置に同じスプライトデータが何度もリピートされる感じ。
とまぁ、そんな感じで少しだけ前進。

ちなみにPROMはアドレスに回り続けるカウンタの値をもらってデータを読み出し、それがデコーダに入って負論理のワンホット信号が出てく感じ。シーケンサのタイミング生成的に使われてる。ここでPROMの後段、タイミング信号を受け取ってるdemuxの先を追いかければ面合成部分の論理にたどり着くかなーって思ったんだけど。demuxの信号調べてるうちにクロック波形が崩れてるんじゃないかって気がしてきて。先のNOTの故障もクロック鈍ってた影響で特性悪い個体がノイズ出してただけって可能性もある。という事でクロックツリーをテスターで追いかけてみたら、すぐに壊れたFFを見つけることができました。CLKと出力1bitが内部でショートしてる模様。実際に波形とってみたら出力がCLKに引きずられてた。そんなわけで該当ICも交換。
IC取り外すの大変なので、事前に短時間で検証できる事はやっておき、ある程度の確信が持てたら交換。
という事で、これだけでは全ては直らず。おそらく似たような故障がもう1箇所ある……。キャラが常に化けるというよりは、スプライトが何かの影に入っている時だけ縦縞が入る感じです。自機も出撃時に建物の影で縞々になる。縦縞なので同じピクセルクロックで動いてる素子だと思うんだけど……。まぁ、ロジック追って少し満足してしまいモチベーションがぐっと下がったのでしばし休憩。

今まで論理回路はチップの中ばかりみてきたので基板上の回路を追うのはちょっと新鮮だった。ほんと学生実験以来な感じ。流石にチップと比べると規模は桁違いに小さいけど、物理的な配線を追うのはちょっと手間。見えてないとこテスターで総当たりしないとだし。そして当時のシステム、わりと愚直にロジックIC積み上げただけなんだなーって。当たり前の事なんだろうけど感心。バスがそれぞれ独立してるのとかも汎用PCになれちゃってると不思議な感じ。画像データとかROM使ってると確かにCPUから読み書きする必要はないもんね。

0 件のコメント: