まごころせいじつ堂

浜町庄金 研究開発  マイコンで遊んでばっかりで

2022年08月

SMC-777(カラーパレットSMI-733) VGA変換時のノイズ問題 解決

前々回はこちら

 SMC-777Cが内蔵しているカラーパレットボードSMI-733の調査結果はつぎのとおり。

 ノイズ対策のためにやってみたのは:
・Trのベース側にフェライトビーズ挿入
・カラーパレットボードのハンダ面をアルミテープでシールド
・GND強化 本体電源シャーシとカラーパレットボードのGNDを接続

 いずれも効果なしで黒い色の部分がうっすらと白く浮き、ドットクロック(16MHz)に同期したノイズが乗る。

 やっとDAコンバータまわりの回路を起こせたのでよく眺めていると、4入力NANDオープンコレクタ出力のALS22が気になる。これは取ってつけたような部分で入力がすべてOFF(値は0000で反転しているので"HHHH")だと強制的にGNDに落として色を黒にする回路だが、当初から疑っててソケット化はしていた。ただしLS22に交換してみたが変化がなくそのままにしていた。

 あらためて回路図。

SMI733DAC

 トランジスタの入力であるベース側をALS22は強制的にGNDにしている。ここをGNDにしてもなんかエミッタ側に出てしまってるのではないか?ということでテストクリップを使いまずベース側をGNDに落として確認した。
2022-08-26 21.59.12

 BASICからカラーパレットをON/OFFしてみる。カラーパレットONではGNDに落とした色は黒になるはずである。結果は変わらず黒の部分が白く浮く。次にクリップをTrのエミッタ側に接続する。カラーパレットボードの出力を直接GNDに落とすことになる。これで白浮きはでなくなった。

 対策としてソケット化したALS22の出力端子をピン上げし、それぞれのTrのベースからエミッタに接続を変える。
2022-08-26 22.38.09

R:2Cの位置にあるALS22のピン6を上げてQ1のエミッタに、
G:2Cの位置にあるALS22のピン8を上げてQ2のエミッタに、
B:5Bの位置にあるALS22のピン6を上げてQ3のエミッタに接続。

2022-08-26 22.37.57

 元通りに搭載して確認。
2022-08-26 22.56.56


確認のためのプログラムはつぎのとおり。ビープ音1回で内蔵カラー(カラーパレット無効)、ビープ音2回でカラーパレットボード有効。これらの切り替えで画面に変化がなければOK。
100 WIPE
110 GMODE 1
120 CURSOR OFF
130 '
140 FOR Y=0 TO 15
150 BOXF(0,Y*8)-(319,Y*8+7),Y
160 NEXT Y
170 FOR W=0 TO 3000:NEXT W
180 BEEP
190 OUT &H51,6
200 OUT &H51,7
210 FOR W=0 TO 3000:NEXT W
220 BEEP:BEEP
230 OUT &H51,&H16
240 OUT &H51,&H17
250 GOTO 170

2022-08-26 22.06.34


 今回はALS22をソケット化したので、同じようにすると改造が大変かもしれない。パターンカットならばもう少し簡単にできる。まだ実施してないが以下の方法で可能。

(1)2Cの位置にあるALS22ははんだ面でパターンカット可能。カット後、配線すればいい。
(2)5BのいちにあるALS22はTr(Q3)に近くカット困難。空きユニットがあるのですべての入力をパラに配線したあとピン8の出力をQ3のエミッタに接続。

 ここまで書いて思いついたがALS22を1個追加して2Cの位置に親亀子亀方式で載せたら(1)のパターンカットいらなくなるね。ベース側をGNDに落とすのと被ってもかまわないのでそうしましょう。


 しかし長かった。去年の11月ぐらいから原因がわからず悩んでいた。なぜSMC-777Cが現役の時代に表面化しなかったのだろうか?当時は液晶ディスプレイでなくブラウン管のディスプレイ、ブラウン管の方が液晶ディスプレイとくらべ映像信号の変化に対して鈍ければこのノイズは観測できなかったのかもしれない。


追記:LTspiceによる出力段の簡単な確認。Q1はパレットボード上のPNPトランジスタ。このエミッタがSMC-777本体側の映像出力用NPNトランジスタ Q1のベースに繋がっている。
74ALS22の"L"出力はtyp 0.35VなのでQ1のベースに0.35Vを与え、アナログ映像出力(R4の上)を観測すると70mV。これはVGAのアナログ映像信号が0~0.7Vなので10%に相当する。これがおそらく白浮きに見える。
SMI733SIML-70mV

 これはALS22の出力をQ1のエミッタ(=Q2のベース)に接続したものでアナログ映像出力は0Vになった。
SMI733SIML-00mV

twitterでのskyriver(@wcinp)さんとのやりとりでだいぶ明確になりました。ありがとうございます。




 やっとこれで安心して地球を防衛することができる…明日着荷予定

【PS4】地球防衛軍6
D3PUBLISHER
2022-08-25



SMC-777用カラーパレットボードSMI-733の調査(2) DAC

 SMI-733調査の続き。前回はカラーパレットの対応を格納するSRAM 74S189の書き込みパスまで。

 カラーパレットによる色の変換はドットごとに変化するR,G,B,X 4bitの信号をSRAM 74S189 3個のアドレスに与えてR,G,Bそれぞれ4bitの情報を取り出す。これをDA変換してアナログRGBの信号を生成する。
 SRAM 73S189のデータ出力は反転することに注意。これをドットクロック(16MHz)のタイミングでいったんFF LS378で受ける。

SMI733DAC
 4つのオープンコレクタ7406で2K2/4K3/9K1/18Kを使って階調を作る。これはSMC-70のモノクロ出力回路とそっくり。MSBは1KΩでプルアップしているが、その他3bitは他のポイント(O123PU)でプルアップしている。なぜこのようにプルアップのポイントを分けているかは理解できていない。
 ALS22によりR,G,B,Xがすべて0の場合は強制的に0Vにしている。これらの信号をPNPタイプのトランジスタで受けてエミッタフォロワで出力。この回路がO123PU生成部を除いてR,G,Bの3セット分ある。

 やっと回路が起こせたのでノイズ問題の調査を再開する。

まごころせいじつ堂のお店約一周年

 boothにまごころせいじつ堂としてレトロPC向けの周辺機器を配布・販売するようになって一年が経ちました。ちょっと振り返り。

動機
 1980年代を中心に多くの人がゲームを遊んだりプログラミングを学んだりしたレトロPC。ネットオークションでも多数取引されているくらい人気だけど動かそうとすると色々苦労する。ほとんどは付属品が何かしら欠品しており、セパレート型のキーボードやソフトウェア媒体、FM-11のDIPスイッチのふたなど本体から外せるものはだいたいなくなっている。このへんを補い、遊べるようにするための周辺を提供しようと思ったのがひとつ。
 レトロPCは回路図が公開されているものが多い。それらを眺めていると色々思いつく。現代の部品を使えば大容量のSRAM1個で置き換えられたり論理回路もGALを使えば素子数も減らせる。その思いつきが役に立ちそうなら同好の士に使ってもらいたい、というのもある。
 でもまあなんといっても一番の動機は作ったものを配布するという同人活動をやってみたいというのがおおきいかな。これに関しては技術書展などで活躍されている@reona396さんとtwitterのスペースで話す機会があって、色々相談したりしてやる気を後押ししてもらった。ありがとうございます。

方針
 ターゲットはレトロPCのなかでもマイナーな機種である。シリーズが続いて数も出たNEC PC,富士通FM,SHARP MZ/X1,各社MSX以外が当てはまる。おそらくそれらの周辺を作ってもせいぜい10セットぐらいしか売れなさそうだし、その予想はだいたい当たってた。
 配布・販売をどうするか。前述のとおり単独では動かず数が出ないのはわかっているので委託販売は無理そうだ。boothのような同人活動をサポートするサイトもいくつかある。ヤフオクやメルカリ経由で販売されている方もいる。ただ、ネットオークションを使うと自分の家で使わなくなった箪笥やミシンを出すときに製品と不用品が混じってしまうようでどうもよろしくない。店としての統一性からboothを利用させてもらうことにした。
 実際に出してみたところ、FM11RAM(キット)についてはBEEP様から声をかけていただき、FM11RAM(1MB)キットとして秋葉原の店舗でも扱ってもらえることになった。ありがたいことです。

配布形態
 プリント基板を使ったものなので完成品・キット・基板のみの配布が可能。通電確認だけで正常に動くかどうか不確かなレトロPCで、画面出力など基本的な動作確認にかかわるものは完成品とした。キットは電子工作が得意な人向け、基板のみは部品集めもできる人向け。なおプリント基板はたまにスルーホール穴がメッキで埋まっていることがあって見落としがち。
 数量は100mm×100mmまでの基板が5枚か10枚で安価にできるので売上予想約10セットに程よく合っている。自分のところで製造するのはけっこう大変なので、完成品が捌けたらキットまたは基板のみの配布とするのがよいのかもしれない。もしくは、そういちどきには注文はこなくなるはずなので受注後製造でもいいかも。

販売価格
 いちばん悩ましいところだと思います。せっかく入手したレトロPCより高くついたら本末転倒なのでできるだけ安価にしたい。聞いたところによると製造原価は販売価格の1〜3割にするそうですが次のように考えてみました。
 設計/試作/評価は時間がかかるとこだが同人誌の値段が500円程度なら基板1枚でそのくらいにしてみたらちょうどいいんじゃないだろうか。基板の面積もあるが300~500円くらいで。
 キット・完成品なら部品代が必要。経費としては発送に使うレターパックなどの代金。製造は完成品の場合ははんだ付けなどの工数。あとは袋詰め、検品などにかかる時間。この部分をぐっと割り引いて計算するしかない。しかし厳密に計算するのが面倒なので、近所のラーメン屋が50円単位で値付けしているような感じでエイヤッと決めています。

収支
 で気になる収支は?直近7ヶ月分の支出が20万、収入が10万で10万円の赤字でした。支出には電子工作に関連する書籍代や工具、検討したい部品なども入れているので本当はもっと赤字幅は小さいと信じたい。
 しかしですよ、月1万4千円の出費でいろんなものを作って研究開発ができて技術的な知見を得、一部の製品は販売して必要な方に喜んでいただけると考えればやってみてよかったんじゃなかろうか。
 まあこの支出とは別で新たなレトロPCを落札してお迎えしているのでダメダメかもしらんですな。

 ということで振り返ってみました。購入してくださった皆さんに感謝します。今後も電子工作とレトロPC向けの色々なもの製作は続けていきますのでよろしくお願いいたします。


SMC-777 VGA変換時のノイズ問題 続


 SMC-777Cをシステムディスクから起動したときの画面はノイズがないが、BASICを選択しBASICに制御が移ったらノイズが発生する。どうやらBASIC側でカラーパレットボードの存在を確認したらenableにするらしい。
 ということでBASIC側から制御してカラーパレットを有効/無効にしてどう変わるか確認してみる。
 OUT &H51,6:OUT &H51,7でキャラクタ画面とグラフィック画面それぞれに対するカラーパレットの適用をOFFにする。OUT &H51,&H16:OUT &H51,&H17でカラーパレットをONにする。これによりノイズもOFF/ONと変化することがわかった。さらに絞り込んでOUT &H51,7とOUT &H51,&H17でグラフィック画面に対する設定のみでノイズが観測できることがわかった。なおBASICのWIPEコマンド(画面消去)を実行するとカラーパレットが存在すれば有効化される。
 これらの動作はSMC-777にカラーパレットボードを追加したものでも再現したので個別の問題ではなさそう。

 SMC-777Cの本体からの16色表示信号とカラーパレットボードからのカラー信号はエミッタとコレクタを共有した2つのトランジスタで切り替えている。外への出力はエミッタフォロワ。出力したい信号の反対側のベースを7405(オープンコレクタ)により強制的にGNDレベルに落として抑止している。
2022-08-08 02.36.26

 この信号の切り替えはIC60のLS74で行っている。このFFのCLKは4φ(16MHz)。
 カラーパレットボードが実装されていてdisableにされている状態では本体からのカラー信号が有効でカラーパレットボード側の信号がGNDに落とされている。このときノイズは出ない。

2022-08-08 02.46.32

 IC60(LS74 UNIT-1)のQ出力が"L"のとき、本体カラー有効。Q="H"のときカラーパレット側有効。

・カラーパレットボードが存在しないとき(*CPON="H")、常にQ="L"。
・カラーパレットボードが存在するとき(*CPON="L")は*BLANK="L"のときに強制的にQ="L"。その他"H"。

CRCPはキャラクタ表示に対するカラーパレットが有効なことを示す信号(OUT &H51,&H16)。
GRCPはグラフィック表示に対するカラーパレットが有効なことを示す信号(OUT &H51,&H17)。
C/*Gは現在表示中のドットがキャラクタかグラフィックかを示す信号。キャラクタ画面はグラフィック画面の手前で、キャラクタ文字のフォントがある位置で"H"、透過部分で"L"となる。

カラーパレット側が有効になるのは:
・CRCP="H"でC/*G="H"のときにD="H"が与えられCLK後にQ="H"。
・GRCP="H"でC/*G="L"のときにD="H"が与えられCLK後にQ="H"。

・カラーパレット側切替時に本体カラー側が落としきれてないんじゃないかなとIC106 7405(カラー信号をGNDに落とす役割)に重ねて74HC05を置いてみたが変わらず。

・カラーパレットと本体ボードを接続するケーブルCN3-CN1をシールドしてみたが変わらず。
・カラーパレットに供給される4φにダンピング抵抗47Ωを挿入してみたが変わらず。

 う〜ん、カラーパレットボードからの信号にすでにノイズが乗っているのかなあ。続く。

記事検索
プロフィール

hardyboy

カテゴリ別アーカイブ
月別アーカイブ
QRコード
QRコード
  • ライブドアブログ