2023年10月24日から2023年10月20日までの日記を表示中
2023年10月24日 (火)
■基板
ワンダー3で実験をしている中で、ふとゲームセレクト画面などでの色化けを解消させる改造の存在を思い出し、あわよくば同じことをCPicS1上で実現できないかと考えて原理を調べてみることに。
既に元のページは消えているようですが、Internet Archive上で情報を参照することができました。 ざっくりこういうことのようです。
- 表示機器側は、映像信号の垂直・水平同期期間のRGBの信号レベルを基準に黒のレベルを決定するらしく、この期間にRGBがゼロに近い状態になっていないと色がおかしくなる
- CPS1のハードには、色情報の出力をマスクする (ゼロが出るようにする) 仕組みがあるが、マスクしているのは垂直同期期間の直後の一瞬だけに限られる
- 垂直・水平同期期間中に色情報を黒にしていれば良いが、書き換えなどを行っていたり、色を出しっぱなしにしていたりすると、黒以外の色が基準として使われてしまい、画面の色が異常になる
- マスク処理を行う(実際には色情報を出しているD-FFをリセットする) 信号にCSYNC信号を混ぜ込むことで、垂直・水平同期期間に色情報が出てしまうのを防ぐことができる
このマスク期間を示す信号としてLUTOEという信号名が記載されていますが、同じ名前の信号がCボードの101番ピンから出ています。また、CSYNC自体はBボード上で作られていますが、その元となるVSYNCとHSYNCはCボードから出ています (Bボード上でこれらをANDしているだけ) 。なので、(LUTOEが同じものであれば) 理屈の上ではCボードとBボードの間に割り込む形でLUTOEを加工してやることで、M/B側を改造しなくても近いことができるはずです。
というわけで、さっそく実験開始。とりあえずLUTOEと、反転させたVSYNCのORを取って、これを元のLUTOEの代わりにBボード側に出してみました。
うおお、なんじゃこりゃ。ゲーム画面が出ない上に、画面下部に謎の模様が・・・。
・・・って、VSYNCの反転とLUTOEをNORした後、反転させるのを忘れていた(汗)。なので逆に画面外の領域に映像が出ちゃっていたのか。まあ、これで変化があったということは、CボードとBボードの間に割り込むことで対策ができる可能性が高いということになりますな。
NORした結果を、再度NORゲートで反転させてみました。
おお、今度は映像が出ました。
ただ、VSYNC期間のマスクを広げただけでは色化けの症状は改善せず。
まあ、まずはちゃんとHSYNC期間もマスクするようにするところからですね。続きはまた明日。
2023年10月23日 (月)
■基板
ワンダー3の縦縞問題、等間隔の縦縞が出ていることから、グラフィック関連のデータが流れているバスのうちの1bitがおかしくなっているものと推測されます。そこで、DL-0921の解析情報を元に、関係していそうな121番ピン以降を、基板を動かしながらロジックプローブで観測してみたところ、122番ピンがLowに張り付いたままであることが判明。これが原因と見て良さそうです。
テスターで確認すると、GNDと短絡してました。いや、でも、何で・・・?って、よく見たらひどいはんだ不良があるしww
問題箇所を拡大するとこんな感じ。ピンをカットした際に、近傍のGNDのパターンのソルダーレジストを剥いでしまったようで、その後、カットしたところをなめらかにするためにはんだごてを当てた際に、剥げて露出したGNDとブリッジしてしまっていたようです。これはダサい、ダサすぎる・・・
ブリッジを解消したら無事GNDとの短絡も解消し、縦縞も出なくなりました。ふぅー。
修正版CPicS1では、カットする可能性のあるピンのすぐ近くには塗りつぶしパターンが来ないようにした方が良さそうですね・・・。
[コメントを書く]
2023年10月22日 (日)
■基板
CPicSKのCPS1.5向けのピンヘッダ実装、ブレッドボードがなくても、普通の2.54mmピッチのユニバーサル基板を支えにすることで、きれいにはんだ付けできることがわかりました。ユニバーサル基板ならブレッドボードよりもずっと入手し易いでしょうし、これでだいぶ敷居が下がった感じです。懸念事項がひとつ解消しました。
[コメントを書く]
■基板
CPicS1の試作基板、ワンダー3で色々実験しようと思い、BボードのROMと干渉する可能性のあるオスコネクタのピンをごっそりカット。
その結果、画面に縦縞が出るようになってしまいました(汗)
どうせどこか断線しているんだろうと思ったんですが、テスターで確認しても、どこも切れていません。うーん、何だこれは。別のCボードで試しても縦縞が出る一方、別のCPicS1に交換すると縦縞が消えるので、このCPicS1の個体の問題であるのは間違いないはずなんですが・・・。
[コメントを書く]
■CD
[コメントを書く]
2023年10月21日 (土)
■基板
CPicSKのCPS1.5向けのピンヘッダの取り付けが厄介な問題、ピンヘッダを3mmちょっとになるようにカットしてやれば、普通にはんだ面側に樹脂パーツが来る形ではんだ付けしても高さを抑えられる可能性があることに気が付き試してみました。ピンヘッダ自体が細いタイプであることもあってか、ニッパーで面白いように簡単に切れます。もちろん、飛散防止のために厚手の袋の中での作業は必須ですがw
短くカットした細ピンヘッダをCPS1.5のKABUKIのソケットに刺してみました。短くなったことで、ピンの長い側がほぼ完全にソケットに刺さるようになりますね。
後はここにCPicSKの基板を載せてはんだ付けするだけ。基板側のソケットにピンヘッダを刺した状態ではんだ付けできるので、やはり非常に楽です。
ソケットなどもはんだ付けして、部品を搭載して、準備完了
普通に起動しました。導通なども特に問題ないようです。
ただ、やはりピンヘッダの樹脂パーツの厚みの分が効いているようで、KabukiがBボードのソケットのピンに接する感じ。うーん、微妙w
おまけ。樹脂パーツを外してみました(笑)
これならBボードのピンとの間に十分スペースを確保できますね。
まあでも、やはりスマートさに欠けるので、これはボツだなぁw
[コメントを書く]
■基板
KiCadで基板をいじっていたら、突然部品面のパターンが半透明みたいになって、はんだ面のパターンと重なって表示されるようになってしまいました。しかも裏側をいじりたいのに「基板ビュー反転」も選べない状態。何だこりゃ・・・。
必死になって設定を探したところ、メニューにあるレガシーツールセットというのを選んでしまっていたのが原因と判明。何かの拍子にF9を押してしまい、これに切り替わってしまった模様です。モダンツールセットを選んでやったところ、いつもの状態に戻ってくれました。嫌な汗をかいたw
[コメントを書く]
2023年10月20日 (金)
■基板
今日はまず、印刷した修正版のCPicS1基板とユニバーサル基板を使ってCPS1.5で位置合わせから。前のバージョンから上段のコネクタの位置を1ピン分内側にずらしていますが、まあ特に変なところに当たるような問題はなさそうです。
次に既存のCPicS1基板を使って再度高さについての検証を実施。やはりCPS1.5のカバーは、92641C-1のPALのソケットの足などの出っ張りを寝かせて、Cボード接続用に秋月の細ピンヘッダ(樹脂部分が薄い)を使って、さらにCPicS1の基板を1.2mm厚で作るところまでやって、ようやく許容できるレベルで閉まるようになる感じですね。キット化する際は、CPS1.5向けとCPS1向けとで分けて、CPS1.5向けのコネクタはこの構成にするのがいいかな。
続いて、CPicS1の試作基板 (この前とは別個体) にCPS1.5向けのプルダウン抵抗を取り付けたり。早くリファインした基板を作りたい・・・。
この後、XSYNC-1を使って21ピンRGBをKVC液晶とRetroTINK-5X or Framemeisterに分岐させるようにしてみたんですが、マッスルボマーの音がまったく出なくなってしまい超焦りました。原因は単なるJAMMAのエッジコネクタ部分の接触不良だったようです。あー、これ、よく接触不良を起こすんだっけ・・・。
[コメントを書く]
■スーパーマリオワンダー
[コメントを書く]
■CD
[コメントを書く]
2023年10月24日から2023年10月20日までの日記を表示中
[コメントを書く]