TK80/BSの
フロッピ、シンセシステムを復活させたい〜
その5
残りのDCOの動作確認
友人Sが遊びに〜
フロッピを2ドライブにしたい!
2016年
12月10日
以前にYM2203を使ったFM音源ボードを紹介しましたが、関連する回路図が見つかり、シンセサイザが繋がる8255ボードと32K下位メモリボードの間に入っているボードに回路が追加されているようなので抜いてみます。
このボードは32K下位メモリボードの100〜7BFFのアドレスデコード(TK80のROM領域とBSの下位に載っているI/Oを除く)をしているボードだと思っていたのですが、どうもそれだけではなく、YM2203の制御するZ80ボードのバスと接続する回路が載っていて、下記の50ピンコネクタ同士を接続すると、Z80側の下位にあるRAMがTK側からリードライトきできるようになるようです。FM音源のパラメータ等をTKから転送するために作ったようですが、ほとんど記憶に無いです。
旧VCOの代りにこのページにあるディレイド・モジュレーションを作製します。VCOのボリュームを流用するので、壊れていないか確認するとVCO8台で16個も壊れていました(泣)。
秋月からディレイド・モジュレーション用のパーツを購入しました。上のサイトで専用基板も売っているのですが、ちょっと変更したい所もあるので、ユニバーサル基板で作ります。右はJRCの2ch入りトランスコンダクタンスアンプ。120円で安いです。
抵抗は選ぶのが面倒なのでセットを購入しました。1/2Wですが、1/4Wのサイズです。
残りの4台のDCOの動作確認をします。まず、DCO8。動作良好でした。
残り3台は一度に動作確認します。DOC本体は問題ないのですが、DOC7用のミキサが動きません。ミキサボードを外して確認するど、ボードは正常で、接続ケーブルが断線していました。何回か取り外しているのでその時に断線したようです。DCOは接続するマザーボードとパネルの位置関係でDCO8からDCO1に向かって組み付けないと、全てを収められないことが判明(笑)。なのでDCO1〜4が外してあります。
DCO5〜8は動作良好です。
12月11日
ガレージの簡易コンタでディレイド・モジュレーション用のユニバーサル基板を必要なサイズに切り、ベルトサンダで端面を仕上げました。先週購入した14ピンのエッジコネクタ基板と組み合わせてみます。スペーサも購入しないと。
午後になって友人Sが遊びに来ました。DCOも8台全て動いたので8chでシンセサイザをデモ。曲データの中には友人Sが作ったものも多く、懐かしいね〜と。友人SもTK80システムを復活させたい〜と。
12月17日
ディレイド・モジュレーション用の抵抗を抵抗セットから選びます。75Kとか56kが無かったです。追加で購入しないといけません。取り出しやすいように100円ショップのケースに収納しました。
半固はガレージの部品棚から見繕います。
TK80のフロッピを2ドライブにします。オークションでPC98用のドライブを購入しました。PC98用のドライブはFD−1165Aという型番で、手持ちのFD−1165Bとはコネクタのピン配置が違います。右は付属で付いてきた8インチフロッピメディア。
早速、分解。凄い埃です。FD−1165Aはセイコーのデータセパレータが載っていました。
秋月から購入したボリュームとLEDが到着。ディレイド・モジュレーション用です。
タイからの8080トレーニングキットをもう一台購入。会社の先輩に見せたら、欲しい、とのことで追加で購入。動作チェックで問題無し。
PC98用フロッピユニットを分解し、フロントパネルを外します。
かなり変色しているので、缶スプレーで塗装します。
ガレージから半田ゴテを持ってきました。高周波加熱の旧メトカル。コテ先が高いですが、使い心地は抜群です。
ドライブの扉のダンパが溶けてドロドロなのでスポンジゴムに付け替えます。2台とも交換完了。
FD−1165B(手前)と比べてみます。コネクタのピン配置が異なりますが、一部を除き同じ信号線です。
FDDの信号線のコネクタは50ピンフラットケーブル圧接コネクタですが、ユニットのコネクタはアンフェノール50ピンです。これは手持ちがありました。
8080の簡易ICE用のコンデンサも秋月から購入したので、少し付けてみました。CPLDが来ないので作業が進みません。
FD−1165をTK80のFDC基板に接続します。AかS(B)か悩むところですが、上で購入した2台の1165AはPC98に接続して動作確認済みとのことで、1165Aを繋げてみます。FDD−101A(日立)とFD−1165Aの信号線リストを作りました。途中までFD−1165B用で繋げてあった配線をFD−1165Aに変更しました。
ドライブとFDC基板の接続ケーブルを作らないとけません。TK80システムの拡張バスは50ピンのフラットケーブルコネクタが並んでいて、スロット数が多すぎるので、ここからコネクタを外します。
拡張バスを2スロット減らしました。3Mのフラットケーブルのレセプタクルはラッチが金属のため、取り外しができて、再使用できます。
ケーブルの方は元々のFDD−101Aの接続ケーブルが長いので半分に切って使います。
取り外した3Mの50ピンのレセプタクルを分解して、半分に切断したケーブルと圧接します。
FDD−101A用のケーブル完成です。
半分になったFDDケーブルとスロットを減らした拡張バスで動作確認します。動作良好です。
12月18日
近くのホームセンタでパネル塗装用の缶スプレーを購入。水性のベージュです。冬は缶の圧力が下がるのでお湯に付けながらスプレーします。
こちらはフロントパネル。
50ピンのアンフェノールを圧接してFD−1165A用のケーブルを作製します。仮接続して、1ピンを確認しておきます。
アパートから持ってきたMS101の代りをオークションで購入しました。型番は同じで、ほとんど新品のようです。1台6800円でした。これはアパートに持って帰ります。
パネルの塗装が乾きました。取りあえず、1台で組み立てます。
インデックスホールを加工していない本物の片
面単密のフロッピを用意して読んでみます。見事にシークエラーが出ました(笑)。まあ、期待はしていませんでしたが(笑)〜FDC基板にはFDD−101Aの
リードデータ信号にワンショットが付いていたりするので、リード系の信号がFD−1165と合っていないと思われます。要調査です。
母
屋の2階からFM音源のYM2203の制御ソフトのアセンブルリストが出てきました。リストのヘッダには”MS−DOS MACRO ASMB.(Z80.
INTEL) Ver1.10”という表記が出てきます。MS−DOSで動くZ80アセンブラのインテル表記版です。会社のラインプリンタで出したみたいです。アセンブル日時は1987年です。
12月24日
ガレージの部品棚にセラミックパッケージのインターシールの8038が16個もありました。入手先不明です(笑)。サイン波が出せるファンクションジェネレータ用のICです。ディレイド・モジュレーションのLFO回路と交換できそうです。
先週の続きのFD−1165Aとの接続です。FDD−101Aでは接続する必要の無かったMB8877から出力されるRG信号(リードゲート、VFOSYNC)を手持ちの7406を介して追加しました。また、リード信号のワンショットとウインド信号(クロック)の反転をスキップできるように、ショートピンを追加します。セクタリードのソフトにパッチを当てて、シーク時とリード時のステータスがメモリに残るように修正しました。RG信号を追加すると、シーク時のステータスが変ってシークエラーが無くなりました。IDフィールドのアドレスマークが読めているようです。いままではセクタのリードの前で抜けていましたが、リード部まで行くようになり、レーコードが見つからないというステータスです。右は非リード時のウインドとデータ信号で、リードするとジッタが増えて、ウインドがLOWの所にデータが出てきて信号としては良さそうな感じです。
簡易8080ICE用のCPLDがやっと来ました。航空便と思われますが、追跡履歴では中国を出てから、3週間以上経ってから日本に到着。10n品を頼んだのですが、来たのは5n品が4個に15n品が6個、適当過ぎです(笑)。右はヤフオクで購入のRG信号用の7416です。上記の7406と交換しました。
早速、半田付けして、残りの部品も取り付けました。
ディレイド・モジュレータを作るために作ってきた部品面パターンを重ねたパターン図です。フロッピが繋がらなおので、シンセまで手が回りません。
12月25日
小さいオシロでは測定しにくいので、ガレージから大きいオシロを持ってきました。色々とスイッチが接触不良で、動きが悪いです(笑)。右は現行のFDD−101Aの正常に動作しているリード時のMB8877から出力されるRG信号(VFOSYNC)で、アドレスマークを走査して、目的の場所が見つかったことが分かります。一番上はインデックスパルスです。
FD−1165Aのリードのウインド(クロック)とリードデータ。リードしてVFOが動作するたびにウインドの位相が変ります。当初これは異常だと思ったのですが、FD−1165の取説にuPD765にはこの機能が入っていると書いてあります。後で分ったのですが、MB8877もウインドの位相はどちらでも良いようです。
Aがダメなので、FD−1165S(FDDに載っている基板はBと同じと思われます)に交換してみます(笑)。埃だらけなので、エアで飛ばします。
信号線リストを作ってFD−1165Sと接続してみます。MB8877はウインド(クロック)と生データが必要ですが、Sはクロックとデータが別に出てくるので、ボード上で余っていた74LS00と04でORしました。
FD−1165SのRDジャンパが2(VFO使用)の時のウインドとデータの波形です。データの方はデータ線の方が連続パルスを出して、クロックは1のままで非リード時、リード時とも以下の波形で変化せず。VFOが全く動いていないような感じで、シークエラーで全く読めません。
FD−1165SのRDジャンパを1(VFO無し)に設定してみます。リード時のみデータ信号が出力されるようになります。
VFO無しなので期待していませんでしたが、50%くらい読めます。読めない時はトラック、セクタのレコードが見つからないというエラーステータスです。エラーの出やすいフロッピと出にくいフロッピがあります。写真のフロッピではトラック0の全てのセクタが読めます。
12月30日
8080の簡易ICEですが、会社でCPLDに書き込もうとしたところ、ダメだったので、一度外しました。
秋月で売っているアナログディスカバリ2を購入しました。オプションのBNCアダプタと電源もいっしょに購入しました。
一緒に買ったシンセサイザ用の部品です。
8080簡易ICEは本体の基板でCPLDを取外しをしているとパターンが剥がれるので、CPLD書込み用ボードを作製しました。電源とJTAGのみ配線しています。
アナログディスカバリ2でFDC周りの波形取ってみました。値段の割りに良く出来てます。
上から、INDEX、RAW_READ、RCLK、VFOSYNCです。
12月31日
アナログディスカバリ2はパターンジェネレータをロジアナにループバックできるので、いろいろと弄ってみました。
パターンジェネレータでバイナリカウンタを出力。
ロジアナで取り込み。
2017年
1月1日
元旦です(笑)。FDCボードはFD−1165S(B)専用に配線してしまったので、FD−1165Aに変換するアダプタを作ります。幅の広いフラットケーブルが無いので14芯を並べてケーブルを作製します。右は完成した50ピンフラットケーブルとアダプタです。
昔、PC9801VMにFD−1165Bを接続した時に作ったB−>A配線図があったので、これを参考にS−>A変換基板を作ります。この前ヤフオクで買った
PC98の純正品の8インチの2ドライブの新品は当時40万円くらいしてたと思いますが、廃棄になった8インチに変換アダプタを作ってVMに繋げていました。内蔵の5インチ+外付け8インチの4ドライブ構成です。その後、エプソンの20Mバイトのハードディスク(定価16万円?)(笑)を買ったので、8インチは外してました。
早速、変換アダプタでFD−1165Aを接続してみます。当然、以前と同じ症状で読めません。
シンセサイザのディレイド・モジュレーションのLFOを8038に変更します。周波数が高い時と低い時でシンメトリを調整するピンが違います。高い周波数で調整しても、LFO位の低い周波数になるとズレてきます。データシートに調整方法が書いてあります。
1月2日
シンセサイザの曲データには7ビット目を音程データに使っているものと使っていないものがあり、データ変換データボードにスイッチがあって7ビット目を変換するか切替できます。使っていなくても7ビット目が出力されるデータもあり、厄介です。
7ビット目のイネーブルスイッチをケーブル延長して、外で切り替えられるようにしました。
DCO−7のミキサが壊れています。オペアンプを交換して直りました。
アパートから来る時に八王子のハードオフで安いPCスピーカを購入してきました。アンプの入っていない方をSC−01に繋ぎました。
1月3日
拡張ボードのスペーサが割れてしまったので、再作しました。FD−1165のS−>A変換アダプタの裏板も一緒にレーザー加工機で作製しました。
両面倍密のフロッピに片面単密のインデックスホールを開けてみます。切れが悪いので穴開けポンチを旋盤に挟んで少し砥いだ後、厚紙でテンプレートを作ります。
ヤフオクでPC98用のドライブを買った時におまけで付いてきた両面倍密のフロッピにインデックスホールを開けてみます。右は台紙を入れてインデックスホールを空けた所。両面倍密フロッピもトラック0は単密だと思って読んでみましたが、読めませんでした。
また、12Kメモリボードが調子悪いです。B000番地がエラーです。ボードを取り外して確認しましたが、配線には問題なさそうです。
調子の悪い2114を手持ちのMB8114と交換してみました。エラーは無くなりました。デバイスが壊れたのか、取りあえず直って良かったです。
1月4日
以
前にBSのテープインターフェースのUARTのボーレートを19700bps(19200bps)に変更して、変調復調回路をスキップしてあったので、BSをノートPCと接続してみま
す。ノートにUSB−UART(TTL)を接続して、BSと繋ぎます。TeraTermで接続してログを取り、STコマンドの出力をノート側でHEXファ
イルにします。それをそのままLTコマンドで読み込ませてみます。画面がスクロールするところでタイミングが間に合わないようで、エラーになります。BSのマニュアルに出ている8251の受信サンプルプログラムを2パスアセンブラで入力して、プログラムを作って受信します。このプログラムでは
TeraTermからのバイナリファイルの転送がうまくいきます。右は00〜FFのバイナリを受信してVRAMに直接書き込んだ所です。
VCOのパネルから部品を取り外しました。ディレイド・モジュレータに作り替えます。
1月7日
会社で8080の簡易ICEのCPLDにロジックを書き込んでみました。正常に書けました。1つ目のデバイスは壊れていたんでしょうか?
8080トレーニングキットボード足はスポンジゴムなので普通の3mmのステーに変更しました。スポンジゴムだとスピーカが下面と面一になってました。
モノタロウで1.0と0.6mmのスズめっき線を購入、ディレイド・モジュレータ用です。
ディレイド・モジュレータの8038周辺を調整中です。外部から周波数を変調できるように変更します。
1月8日
BSのLTコマンドはTeraTermの送信時のウェイトに20mSecを入れると、画面がスクロールしてもエラー無しで送れることが分かりました。遅いですが、PCからHEXファイルが転送できるので、クロスアセンブラでプログラムが作れます。DB文でテストデータを作成しHEXファイルを作ります。
STコマンドのレコード長は0x10ですが、上記のクロス環境で作ったHEXはレーコード長が0x20になります。0x20のレコード長でもLTコマンドで問題なく読めました。DB文で作ったテストデータが転送できました。
上記で2パスアセンブラで作ったBSのマニュアルの256バイト受信プログラムを今度はクロスアセンブラで作成して20mSecのウエイトを入れて、LTコマンドでロードして実行します。当然、この時は余分なウェイトを入れなくても正常に受信できます。