2023年9月9日から2023年9月5日までの日記を表示中
2023年 9月 9日 (土)
■基板
これまでCPS1での起動時キー書き込みは、BボードとCボードの間にアダプタを入れて、そこで一部の信号をバイパスする形で行ってきましたが、これだとどうしても基板の高さが増してしまうため、例のカプコンワールド2やVARTHのケースに収まらないという問題が生じます。
で、ちょっと前にこの問題を回避するナイスな方法を閃いたので、今日はそれを試してみることにしました。使うのは秋月電子で売っている超薄型の0.65mmピッチ SSOP28用ピッチ変換基板です。 正直、思いついた時点では基板を起こす覚悟だったんですが、まさかこんなドンピシャなものが市販されていようとはw
これをこんな風に7ピン分を切り出します。カッターよりもハサミで切った方が楽ですね。
もう一つ、こんな感じで2ピン分を切り出します。
次にCボード (今回は 92641C-1) のCPS-B-21のピンを上げていきます。まずは41番ピンから47番ピンまで。
そして同様に61番ピンと62番ピンも上げます。
41番ピンの近くにカプトンテープを貼り、絶縁処理 (この後もうちょっと貼り足しました)。
そしたら、最初に切り出したピッチ変換基板を上げたピンの下に差し込みます。
そして先程持ち上げた7本のピンをハンダ付けします。
41番ピン、43番ピン、45〜47番ピンはGNDに配線すべき信号なので、繋ぎつつ、ちょうど変換基板の左右にあったGNDのパターンに適当な端材でCボードに固定w
もう一つの切り出したピッチ変化基板も、同様に61番ピンと62番ピンの下に滑り込ませて、持ち上げたピンをハンダ付けします (写真はその後、上からカプトンテープを貼った状態なのでわかりにくいですが・・・)
後は42番ピン、44番ピン、61番ピンおよび62番ピンの信号を個別に引き出します。ついでに+5V とGNDも引き出し。61番ピン・62番ピンの下に入れたピッチ変換基板は、うまくCボードに固定できていないため、ひとまずカプトンテープを上から貼って補強しています。非常に見苦しい・・・w
早速VARTHで試してみます。マルチプレクサに入れるBボード側の信号は、Cボードのコネクタ部分から取得しています。
起動しました!やった!
が、しばらく放置していたところ、いつの間にか画面がブラックアウト。何やら不安定なようです・・・って、42番ピンと44番ピンをCボードから外した後、プルダウンするのを忘れていました (元々はR1とR2でプルダウンされている)。というわけで、雑にプルダウン抵抗を追加w
これで安定したっぽいです。いやー、イメージしていた方法が実際に可能であることが実証できて良かったです。ただ、実装難易度は置いておくにしても、61番ピン・62番ピンの下に割り込ませたピッチ変換基板が固定できていないなど、課題も多いですね。というか、M/B側から変な信号が来なければ、そもそも61番ピンと62番ピンには細工が不要なんですよね。うーん、何とかできないかなぁ。
2023年 9月 8日 (金)
■コネクタ
CPicS1で使えるであろう 40ピンのキー付きのメスコネクタ (ワイドタイプ) が届きました。AliExpressのショップに在庫がなくて、いつ頃入荷するか問い合わせたら、わざわざ仕入れてくれた模様。ありがたい。量産することになったらたくさん買いますw
[コメントを書く]
■基板
昨日の続き。起動時にCPS-B-21にキーを書き込む間だけ、CPS-B-21のデータバスの下位2bitをサブボード側から切り離しておく実験です。CPicSKと同じ74HC4053 (マルチプレクサ・デマルチプレクサ) を使うことで簡単に実現できそうだったので、CPicSKの試作基板の余りを使って作ってみましたw
おお、動いた。殿様の野望2が動きました。大成功です。
チキチキボーイズもVARTHも、それぞれのマザーボードで試してみましたが、いずれも問題なく起動時キー書き込みに成功しました。
とにかく非常に安定していますね。素晴らしい。
[コメントを書く]
2023年 9月 7日 (木)
■ティアーズオブザキングダム
[コメントを書く]
■基板
CPicSKのRev1.0cの基板が届きました。92636D-3にも対応するよう、抵抗のパターンを追加したバージョンです。
今回は基板の厚さを1.6mmから1.2mmに減らしています。これでピンヘッダのハンダ付けも、多少はやりやすくなるかな?
[コメントを書く]
■基板
昨日の調査で、CPS1のM/BにおいてCPUリセット解除前にデータバスにデータを流しているのはCPS-A-01っぽいということはわかったんですが、そういうM/Bでも起動時のキー書き込みを安全に行えるようにするには、キー書き込み中、CPS-B-21のデータバスの下位2bitをBボードから切り離した状態としておく必要がありそうです。
というわけで、これを試すために、新たにデータバスに割り込むためのコネクタを作成しました (写真下側)。単にBボード - Cボード間で61番ピンと62番ピンを繋がないようにして、Bボード側とCボード側の両方から配線を引き出しています。
これを使って、CPS-B-21に対して、Bボード側の信号とPICの信号のどちらを繋ぐか、マルチプレクサで切り替えるようにする作戦。
[コメントを書く]
2023年 9月 6日 (水)
■基板
CPUがリセットを解除する前にデータバスに信号を出しているのは誰なのか、VARTHのM/Bを使って調べてみました。
とりあえずM/B単体だと、リセット解除までの間にデータバスに信号が出ることはなさそうです。
続いてプログラムROMがほとんど載っていないマジックソードのサブボードを載せてみましたが、こちらも無風。なるほど・・・
VARTHのサブボードに交換してみたら、データバスに信号が出てきました。
うーん、プログラムROMが怪しそうですね。そこで、試しにVARTHのプログラムROMの先頭の方のやつを抜いてやったらデータバスに信号が出なくなりました。
つまり、だれかがCPU起動前にROMを読みに行っていて、そのデータがデータバス上で見えてしまっているようです。プログラムROMからデータが出ているということは、プログラムROMのOEを操作しているのが誰かを追えば、読み出し主がわかるかもしれません。
ROMのOEはどこから来ているのかを追ってみたところ、ROM1というPALから来ていました。このPAL自体はM/B間で共通のはずです。だとすると、PALのロジック自体が原因ではなく、そこに入力されている信号に違いがあって、VARTHのM/BではOEが動いてしまっているものと推測されます。
PALの入力と思われる線を追ってみると、CPS-A-01の方から来ているものがあるようです。うーん、なるほど、Aチップか。しかし、M/Bによって差があるというのはどういう違いなのか。まさかCPS-A-01のロットによって違ったりするんですかね・・・。
[コメントを書く]
■SSD
安くなっていたのでSATAのSSD (EXCERIA 960GB) を買いましたw。デスクトップ機に細々とした容量のやつが載っているので、これを統合しつつ、空いた小さいやつは古いデスクトップにつけてLinuxを入れて・・・とかやりたいけど結局増設して終わりになりそうw
[コメントを書く]
2023年 9月 5日 (火)
■基板
起動時キー書き込みがうまくいかないチキチキボーイズについて調査しています。ひとまずマザーボードを殿様の野望2のものに交換して、Cボード無しで信号を見てみたところ、電源投入から300ミリ秒くらいの間、データバスが動かなくなりました。
この状態で改めて92641C-1で起動時キー書き込みを試してみたところ、あっさり立ち上がりました。
というわけで、電源投入直後からデータバスに信号が出てしまうのは、元々チキチキボーイズについていたM/Bの方に何かしらの原因があるようです。ひょっとしてM51953Bのタンタルコンデンサが容量抜けか何かを起こしていて、CPUリセット解除が異常に早くなっちゃってるとか・・・?
が、チキチキボーイズのマザーボードで波形を確認してみたところ、電源投入からリセット解除まで約300ミリ秒程度の遅延がついており、殿様の野望2のマザーボードと同程度でした。ここに異常はなさそうです。うーん。
元々チキチキボーイズについていたM/Bのバスの波形を観察してみたところ、起動時に何も信号が出ていない期間があるようです (波形の画像で緑や青が途切れている区間)。一定ではないようですが。ここをうまく狙うことができれば、安全にキーを書き切れたりするのかも?
追記: これはどうもロジアナのサンプリング間隔が低くて、タイミングによってはしばらくうまく信号変化を拾えなくなり、このように見えていたようです。きちんと16MHzのクロックに同期させてサンプリングしたところ、このような広い隙間は存在しないことがわかりました・・・。
試しにキー書き込みを始めるタイミングを適当に遅らせてみたところ、元のマザーボードでもチキチキボーイズが起動時キー書き込みで立ち上がりました。やった!
続いてVARTHでも起動時キー書き込みを試してみました。
成功しました。
ただ、波形を見ると、チキチキボーイズと同様に、キーを書き始める前や書き終えた後、CPUリセットが解除されるまでの間に、データバスに信号が出ているようです。チキチキボーイズのマザーボード固有の現象ではないということか・・・。
ちなみにチキチキボーイズについていたM/Bは 88617A-7bの10MHz版で、殿様の野望2についていたM/Bは 88617A-7bの12MHz版 (いわゆるCPS DASH)、VARTHについていたM/Bは 88617A-5の12MHz版 (CPS DASH) でした。CPUの動作周波数は違えど同型の殿様の野望2のM/BとチキチキボーイズのM/Bとで挙動が全然違うことを考えると、型番によってCPUリセット解除前の挙動が違ってくるというわけでもないのかな・・・。うーん。
[コメントを書く]
2023年9月9日から2023年9月5日までの日記を表示中
[コメントを書く]