2011年11月18日から2011年11月14日までの日記を表示中
2011年11月18日 (金)
■黒往生修理
PALが期待通りに動かない問題ですが,Max Loaderにあるベクタテスト機能で確認してみたところ,何を入れても出力がLになってしまう状況で,やはり全然真理値表の値が反映されていないようです.真理値表の中身を適当に書き換えてコンパイルし直しても,ChipMaxの読み込み時に表示されるチェックサムは変更前と同じだったりして,そもそも生成されているコンフィギュレーション自体,何も変わっていないっぽい (´・ω・`)
H固定のピンを作って書き込んでみたら,そこに関してはちゃんと反映された (ベクタテストでHになった) ので,やっぱりFIELDとTABLEで作る真理値表にのみ,問題がありそうです.一体何なんだろう・・・と思ってググってみたら,同じような話が出てきました.よくわかんないけど,これは言語仕様のワナ(;´Д`)?
上記リンク先の回答にあるように,信号名の末尾の数字の後ろにさらに「_」をつけて,すべて展開して書いてやったら,ようやく真理値表が反映されるようになりました.よかったよかった・・・.いやしかし,リファレンスマニュアル読んで書いても,これはわからんよな・・・(;´Д`)
で,早速動かしてみたところ,_OE自体はちゃんと出るようになりました.やった!ただし,アドレスが間違っているらしく,画面が化けまくり(笑).ふーむ,この前予想した1本離れた所にあるピンの解釈が間違っているのかなぁ,やっぱ.
眠くて頭が回らないので,手っ取り早くケツイのPALをChipMaxに乗せて,ベクタテストで入力を変えて何が出てくるかを観察してみることにしましょうw.入力を色々と変えて観察してみたところ,例のカスタムチップ上で1本離れたところにあるチップは,どうもこれらのROMのアドレス範囲 (9.5MByte分) にアクセスがあった際に1になる信号らしいということが判明.うーん,25bit目じゃなかったか.というわけで,この観測結果を元に,真理値表を生成するプログラムを修正しました.
いくつかの入力パターンで,きちんと観測した結果と同じ値が出ていることを確認した上で,再度PALに書き込んで,いざ実機へ.今度こそ・・・動け・・・きたー!!!
というわけで,入手してから18日目にしてようやく直りました.いやー,今回は手強かったなぁ・・・.ちなみに,Max Loaderのベクタテストは,結果が合わなかったときに実際の出力を見せてくれるので,今回のケースだと,これを元に入力6bitの全パターン (64パターン) を手で試せば真理値表ができちゃうんですよね(笑).現状,人力なので,入力や書き写しが面倒な上に,間違いが入り込みそうで怖いからやりませんでしたがw
あと,今回はアレについては割と強引 (それでも平然とROMのシールはがしちゃうような海外の連中よりはスマートだと思うけど) にやっちゃいましたが,もう少しうまくやる方法も考えたいですね.まだまだ先になると思いますが・・・.いやしかし,液漏れ起こして基板を壊しまくる劣悪な充電池 + 基板の故障の予兆に気づかせない封印つきのシールドケース + 電池が切れて消えたら起動しなくなるSRAM上のセキュリティ情報と,ゲームは素晴らしいのに,基板の設計が残念すぎるのが何とも言えませんね・・・.
[コメントを書く]
■原稿
というか,今週,本当に基板いじってばかりだったな・・・.いや,まあ原稿もちまちまやってはいるんですが.いい加減急がないとまずいね・・・.
[コメントを書く]
2011年11月17日 (木)
■荷物
凄い荷物が届いていました.
食いなせー
かんずり!やった!ありがとう!ありがとう!
ところでこっちのでかいのは何だ・・・?w
うわぁ,何だこれwwwww.すげえwwwwwwwwwwwww
色々凝ってますw
というか包装紙にサインペンで迷うことなく豪快に描かれていて,すさまじい迫力です.とにかく凄いw.こんな才覚をお持ちだったとはw.包装紙は大事に保存させて頂きますw
中身はヱビスビールでした.やったー!ありがとうございます!というか,こんなに頂いちゃって超恐縮です (汗
[コメントを書く]
■板来来
それとは別に,コナミのジャンク基板4枚セットも届いていたり.どれも色々壊れているそうです.
サンセットライダーズ (北米版).豪快にキャラ化けしますw
TMNT2はこんな具合で画面がぐちゃぐちゃ.起動すらしません.
あ,角が割れてるぅ(´・ω・`)
あとの2枚はバイオレントストームとRun&Gun (スラムダンクの北米版).前者は通電しても画面が真っ暗なままでした.後者は壊れていないらしいので放置w
ひとまずTMNT2の基板を眺めてみたところ,基板裏に大量のひっかき傷を発見.アメリカ人,扱い悪すぎるだろ・・・(;´Д`)
というかえぐれたとこもありますねw.しかも何か埋めてあるしw.なんじゃこりゃw.線が2本えぐり取られている感じです.元々どういう状況だったのか,イマイチよくわかりません.
丁度サンセットライダーズと同じ基板だったので,えぐれたところが本来どう繋がっていたのかを確認.なるほど,ここにはスルーホールがあるのか・・・
とりあえず無水エタノールで変な塗布物を除去.傷口が露出しました.
テスターで追ってみたところ,スルーホールがえぐり取られたようになっている部分は,きちんと部品面側まで繋がっていました.一方,もう1本はバッチリ断線.というわけでここを補修.
お,画面がぐしゃぐしゃだったのが直りました.ただし,ROM/RAMチェックでBADが出てますね・・・.
BADが出ている1J・2G・3Gはこの3つか・・・RAMですねぇ.クォースの悪夢が蘇ります (まああの時はシュッ太郎のメンテの仕方がわからなくて大変だっただけなんですがw)
とりあえずロジックプローブでRAMの信号を見てみたところ,なんとアドレス線が2本も無信号の状態でした.再びサンセットライダーズの基板を持ち出して,信号の出元をテスターで探したところ,カスタムチップに到達.TMNT2の同じカスタムチップを見てみると・・・.はい,ピン浮いてますね.
が,浮いているピンをはんだ付けしても直りません.まだだめかー.再度基板裏をじっくり見てみると,もう1ヶ所,傷ついて断線しているところを見つけました.傷に変なもん塗ってあるのが,傷の存在をわかりにくくしています.恐ろしい・・・
というわけでここも補修.
が,これでも症状には変化がありませんでした.相変わらずBADのまま.うーん,RAMの素子が壊れてたりしたら嫌だなぁ.まあでも3つまとめてなので,データがどこかで落ちてたりするんではないかと予想してるんですが・・・.ひとまず今日はこの辺にしておきましょう.
[コメントを書く]
■黒往生修理
RSオンラインからPALも届いていたり.流石早い.
早速WinCUPLをインストール.CUPLは初めてなので,まずは書き方を調べるところからですね.検索したら,オフィシャルのリファレンスと,どこぞの講義資料が出てきました.
講義資料の方を眺めてみたところ,何か真理値表を書いて,そのまま乗っけられる模様.こりゃ楽だ.というわけで,先日考えた回路について,全入力パターンに対する出力を吐き出すCのプログラムを書いて,それを見よう見まねで書いたCUPLのコードに埋め込んでみました.「Device」行に「g16v8a」と手で書き足す必要があることを知らなくてはまりましたが,何とかjedファイルの生成にも成功.これで,動いちゃったりしたら熱いなぁ・・・
が,ChipMaxでATF16V8BQLに書き込んで実機で動かしてみたものの,症状に変化なし.ロジックプローブで観察してみると,相変わらず_OEが常に両方0になっちゃってます.真理値表的には常にどちらかが1になるようにしているはずなのになぜ・・・.というか出力全部0じゃん.何これ _|‾|○.というわけで今日は時間切れなのでまた後日.
[コメントを書く]
2011年11月16日 (水)
■板来来
今日は届いた基板をチェックしたり.アテナのペアーズラブ.
縦横斜めで同じマークか同じ数字のカードを選んで消していきます.凄く簡単に詰みますね・・・.
ちなみに脱衣ゲーでしたw.シルエットが気になりますねw
そしてポリネットウォリアーズ.
一応ポリゴンゲームですw.
広告には見覚えがあるんですが,実際にロケで動いているのは見たことあったかな・・・.
この基板,複数枚使って複数人対戦 (最大4人) ができるようです.右側のRCAコネクタからケーブルでつなぐらしいです.
ちなみにXRGB-3だと普通に映りますが,ゼクセクスとかと同じで,本体のみで調整しようと思うと画面が全部収まりません.あとSC-500N1/DVIでは映りませんでした.残念.
[コメントを書く]
■黒往生修理
ATMELのWinCUPLなるツールについてちょっと調べてみたり.無償配布版だとVerilogは使えなくて,CUPLなる言語のみのサポートらしいです.これで昨日考えた論理の回路とか作れるのかな・・・.
[コメントを書く]
2011年11月15日 (火)
■黒往生修理
今日も黒往生の基板をいじってみます.ATF16V8Bのデータシートをよく見たら.DIPの片側は入力ピン固定ということが書かれていましたw.ということは,昨日,PALから2個のROMに対して4本ずつアドレス線が出ていると思っていたのは誤りで,片方のROM向けの出力だと思っていた4本 (実際は3本しか配線されていない) は,実は入力だったということになりますね.やばい,初歩的すぎる (;´Д`)
あれ,じゃあ,この4本の入力信号はどこから来ているの・・・?と思ってじっくり追ってみたら,これらもカスタムチップから出てました.というわけで,カスタムチップからPALには合計6本の線が配線されていて,そのうちの3本がROMにも配線されているということがわかりました.配線先のROMは16Mbitなので,ROMに繋がっている3本がアドレスの20bit目から22bit目 (1オリジン) に対応しているようです.そしてカスタムチップ側を見ると,残りの3本中の2本は先の3本に続いて並んでいるので,これらが23bit目と24bit目に対応することも推測されます.
残りの1本は,カスタムチップ上の,ちょっと離れたピンから配線されていたので,他とは用途が違いそうです.MAMEのソースによると,前述の16MbitのROMは,0xc00000から0xd7ffffまでにマップされており (先頭の12Mbitしか使っていない),その直後にPALの出力にアドレス線が繋がっている64MbitのROMが連続してマップされているそうなので,このROMの最後のアドレスは0x157ffffになります.これらのアドレスでそのままアクセスされているとすると,これらの2つのROMに対する_OEの生成には6bit分の情報が必要となることから,離れた1本はその辺の情報 (たとえばアドレスの25bit目) に対応しているのかもしれません.
というわけで,何となくPALが何をしているかが見えてきました.これなら,ダンプしたりしなくても,等価な回路を組めそうな気がします.どうやってPAL向けの回路を記述できるのか,まだよくわかりませんが,まあ,とりあえず部品だけでも買っておきましょう.早速,RSオンラインにあったATF16V8BQLを注文してみました.果たしてどうなるか・・・.
[コメントを書く]
2011年11月14日 (月)
■黒往生修理
今日も黒往生を.壊れていると推測されるPALの配線や信号をテスターやロジックプローブで追ってみました.2個のROMのアドレス線に4本ずつ信号が出ているようです.また,カスタムチップからは2本の線が来ている模様.・・・あれ,2本の線でどうやって制御してるんだ? というか,この2本の線の信号がおかしいという可能性もあるのかな・・・.うーん,切り分けできないかなぁ.白往生の基板があればなぁ・・・って,この部品,もしかしてケツイにも乗ってるのかな?
ケツイの基板を引っ張り出して確認してみたところ,同じようなPALが乗っていました.MAMEのソースでアドレスマップを確認すると,メモリ周りの構成も同じっぽい.カスタムチップとの接続も同じみたいなので,これは同じと見て間違いなさそう.
というわけで,試しに壊れていると思しきPALを外して,ケツイの相当するPALを移植してみたところ・・・見事にキャラ化けが直りました!
やっぱりこのPALが壊れているということで確定ですね.さて,次はこの故障したPALをどう修理するかですね・・・.PAL自体は手に入るけど,中身はどうするか.単なる組み合わせ回路なら,総当たりでダンプできるだろうけど,カスタムから信号が2本しか来ていないから違うような気もするのが怖い・・・.うーん.あ,ちなみにセキュリティ設定が有効になっているので,ケツイのPALのコンフィギュレーションを吸い出すことはできませんでしたw
[コメントを書く]
- くろ 2011/11/22(火) 00:18:36
- ここはやっぱりMAMEチームのPAL吸出し機の出番でしょう。nosukeさん作りませんか?
http://cgfm2.emuviews.com/pal/index.html - nosuke 2011/11/23(水) 16:58:33
- ああ,それ,他の方からもオススメされました(笑)
いずれこういうのも作りたいなーとは思ってるんですが,なかなか.
カメレオンUSBあたりを使えば,あまり手間をかけずに作れそうですね.
2011年11月18日から2011年11月14日までの日記を表示中
この無駄な情熱はいったい何処から来るものなのか?
機会があれば是非一度、本人の顔が見てみたいものですね。