TK80/BSの

シンセシステムを復活/拡張したい〜

その48

ROMライタ用
PCのメンテナンス

SBC8080ボードを使った
TK80BS互換機の作製

2020年
2月8日
ROMライタ用のWin7PCの交換用キーボードバッテリが来ました。バッテリは互換品です。



早速、バッテリを交換しましたが、下の赤枠のラッチ部がバッテリと合わず、スライドが動きません。赤枠のラッチ部を1〜1.5mmほど削って、どうにかスライドがロックできるようになりました。


続いて、キーボードです。WEBで交換方法を調べて、手順通り交換完了です。キーボードを固定している3個のネジは無くならないように、外れなくなっています。


交換作業が完了したので、バッテリの動作確認を行います。動作良好です。


キーボードの動作も良好です。ただ、このキーボードのESCキーはすごく小さく、Emacsを使う時は辛そうです。


TK80BS互換機のフロントパネル穴開け用のセンタポンチ用のシールシートをレーザプリンタで印刷して持ってきました。右はQCADで描いた原稿です。


シールシートをフロントパネルに貼って、ポンチを打ちます。右側のスイッチ類は左側に8mmほど移動しました。



ボール盤で所定の穴開けします。電源スイッチとリセット、FPGAの再コンフィグのスイッチは手持ちの照光スイッチを使います。


2月9日
リアパネルセンタポンチ原稿を作成します。
右上の長方形の穴は拡張インターフェースのアンフェノール50ピン用です。右下の小穴はスピーカ用です。


リアパネルの穴開けも行います。リアはラフなので、コピー用紙にインクジェットで印刷して穴開けしました。拡張インターフェースの長方形はヤスリで仕上げました。


テープインターフェースの転送速度1200bpsから2400bpsに変更しました。因みに4800bpsでも確認しましたがエラーが多発して、あきらめました。


テープインタフェースのセーブロード時間の比較動画を作成しました。はじめにセーブです。約750kバイトのMP4ファイルをロードします。


続いてロードです。TeraTermの1文字出力待ち時間を1mSecに設定してあり、セーブより大分遅くなります。約900kバイトのMP4ファイルをロードします。


2月11日
TK80BS互換機をここにある擬似ROMで動作させてみます。上位のモニタL−2BASICROM化し、0C00〜7BFFの拡張プログラムL−1BASICはインテルHEXに変換して簡易ICEでRAMに転送します。


簡易ICEでF000から実行すると擬似モニタ起動しました。


擬似L−2BASICを起動します。FOR文で簡単なテストプログラムを入力して、実行してみます。正常動作しています。


テストプログラムをSAVEHコマンドで出力します。


TeraTermで受信してファイルに変換し、内容を確認します。行末は0Aになっています。


LOADHでロードしてみます。1行ごとのに改行はしませんが、正しくロードできました。


続いて、擬似ROMに付属のPICTURE.CASLOADコマンドでロードしてみます。ファイルは330行で終了ですが、終了せず、プロンプトが戻りません。後で気が付きましたが、TeraTermのファイル転送モードバイナリにする必要があったかもしれません。次回、再確認します。


続いて、PSoC5LPのPS/2パラレル変換器マクロ機能を追加しました。ファンクションキーを使い、キー入力を記録再生します。


PSoCにキー入力の行間の時間測定用カウンタブザー回路を追加しました。マクロ再生時に、測定した時間と同じ待ち時間を作ります。ブザーの周波数は400Hz800Hzが出力できます。


PS/2キーボードのファンクションキーの上にマクロの機能シールを貼りました。


マクロ動作の動画を作製しました。F1記録開始F2で停止、F5実行F3で回数を4回に設定、F5実行です。約5MバイトのMP4ファイルをロードします。


互換機のマザーボードをケース内に固定するアクリル部品をフライス盤で加工します。


ボードガイドと同じコの字のアクリルを加工して6個作製しました。マザーボードのアルミ板に仮止めしました。


ケースにボードマザーボードを入れてみます。電源PS/2パラレル変換基板も空きエリアに固定する必要があります。


簡易ICE用TeraTermのマクロファイルを作成しました。ヘルプコマンドが改行しないように横サイズを90文字に設定しました。


続いて、テープインターフェースマクロファイルです。ストップビットを2ビットに1文字待ち時間を1mSecに、改行時に35mSecに設定します。文字数を18に設定してウインドサイズを小さくします。最新版の4.105でないと、引数でストップビットや待ち時間が設定できませんでした。


デスクトップにマクロのショートカットを作ります。USBは決められたポートを使う必要がありますが、ダブルクリックで無設定簡易ICE用テープインターフェースTeraTerm起動できます。



2月15日
先週の擬似ROMに付属のPICTURE.CASバイナリモードにして転送すると、正常終了しました。


擬似ROMのL−1BASICの動作確認を行います。モニタからB1コマンドで起動できます。FOR文のテストプログラムを入力します。本家と異なり、L−1BASICは下位メモリにあります。


正常動作しました。整数BASICです。


TK80BS互換機のフロントパネルレタリング原稿を作成して、ガレージのレーザプリンタで印刷します。赤枠はキーボードのマクロ用のLEDです。はじめに、コピー用紙に印刷して、サイズを確認します。問題ないようです。


続いて、本番のつや消し透明のシールシートに印刷します。霧吹きで濡らして貼り、その後、スイッチなどのをカッタで開けます。


スイッチやジャックなど仮止めし、カバーを付けて全体の雰囲気の確認を行います。少し気泡が残っていますが、まあまあです。


PSoCのPS2/パラレル変換器マクロの動作表示用LEDを追加しました。記録中:赤再生中:緑ループ待ち中:黄を点灯させます。とくにループ待ちは何十秒も待つ設定もあり、このときはキャンセルキーしか効かないため、外から見て状態が分かるようしました。このLEDはフロントパネルに取り付けます。


フロントパネルのLEDをエポキシ接着剤で固定しました。コモン側は接続し、アドレスとデータには電流制限抵抗を取り付けました。


2月16日
現在はFPGAのコンフィギュレーションが終了した後で、簡易ICEからモニタを起動しています。FPGAはSPIフラッシュからコンフィギュレーションされるので、動作が可能になるまで数秒掛かります。電源投入で自動的にモニタを起動するには、コンフィギュレーションが完了するまで、CPUにリセットを掛けておく必要があります。FPGAからDONEを引き出して、LV1G125を使ってレベル変換してリセットします。SC70パッケージなので、半田付けが面倒です。SBC8080のバスのRESETINに接続します。この修正で電源投入でモニタが立ち上がるようになりました。


本家のPSoCのPS/2パラレル変換器も同じプログラムに更新しましたが、ヒストリ機能の動きが互換機と異なっています。同じプログラムなのですが、不思議です。次回、確認してみます。



2月23日
TK80BS互換機のボードをケースに入れます。ボードガイドをケースに仮止めして、マザーボードをガイドに嵌め、ボードガイドを固定します。


拡張I/FフロントパネルのLED用のケーブルを作製しました。フラットケーブルにコネクタを圧接してケーブルは長めに切っておきます。


先週追加したFPGAボードの再コンフィギュレーション中にCPUをリセットする回路ですが、電源投入時には問題ないのですが、稼働中に再コンフィギュレーションを行うと、簡易ICEのコンソールに無効な文字が化けて出力されます。簡易ICEのシリアル出力DONE信号でゲートすると回避できました。使用したのは以前も使用したLV1G125です。実体顕微鏡下でないと半田付けが難しいです。


フロントパネルのアドレスとデータ表示のLEDケーブルを取り付けます。電流制限抵抗は6.8Kオームです。


LEDドライブ基板をマザーボードに接続し、LEDの点灯確認を行います。動作良好です。


マザーボードをケースに固定するステーを作製します。QCADで図面を描いて、HeeksCNCでGコードに変換します。


レーザ加工用の変換後、NCVC加工順を確認します。5mm厚のアクリルから3枚切り出しました。


マザーボードにステーを固定し、ケースに仮止めしてみます。良いようです。


2月24日
5Vの電源ユニットをケースのリアパネル取り付けます。


PSoCのPS/2キーボード変換器もケースに取り付けます。


電源スイッチを経由して外部の9Vを5V電源に供給し、動作確認を行います。問題ありません。


アクリルの残材からスピーカ固定部品を作製して固定しました。


正面からLEDを見ると少し眩しいです。部屋が明るいと、ちょうど良いですが、LEDの輝度は調整可能にします。


リアパネルです。左からDC9V入力テープI/Fビデオ出力PS/2キー入力FPGAボードのUSB(Micro)です。拡張I/F用のアンフェノールコネクタ以外は取り付け完了しました。








back