現在地

工作

工作

個人的に製作してきたものの紹介です。

電子的なものがほとんどですが、そうでないものも出来るだけ出していきたいと思っています。

回路図、ソースコードなどは出来ればすべて載せたいのですが、以下の理由で難しいものが多いです。

  • 回路図については無いものが多い
  • 残っていないのではなく、そもそも書かないことが多かったためです。

    • どうせ1台しか作らないのだから紙に線を引くのと、実際に配線する手間は大して違わない。
    • バス配線などは書かなくてもわかる(各デバイスのD0同士を接続するなど)。ずらすなど注意を要するところだけメモがあれば困らない。
    • 雑誌などの記事・データシート・アプリケーションノート等を参考にしたところはそれを見ながら配線すればよい。

    もちろん仕事ならば書きますが。

  • 著作権的に公開でない
  • 特に古いものでは雑誌など掲載のものをベースにしているものがあり、オリジナルと分離できないものは公開できません。

  • 古いメディアに入っている
  • 5インチや8インチのフロッピーだったり、PC-9801フォーマットだったりして読むのが難しいものがあります。

  • 本当に失われた

SVM9300音声合成キット

カテゴリー:

パーツ通販のサイトを眺めていたところ、懐かしいキットを発見して買ってしまいました。

SVM9300音声合成キット
諏訪精工舎のSVM9300を使った音声合成のキットです。

ICさえあれば回路はシンプルなので各社から似たようなキットが発売されていました。今回入手したものもデータシート記載の参考回路そのまま基板を起こしてパーツを揃えたといった感じですね。

当時もちろん関心はありましたが、ついに手は出さずじまいです。

1980年代のはじめ頃だったと思うのでもう35年位前の話です。

何のキット?

テーマ:

カテゴリー:

こんなキットも発見したのですが、何のキットなのでしょうか?

NT-8
「ELEHOBBY」とありますから嘉穂無線ですかね。

外部への配線はすべて切られていますが、「SP」はスピーカと思われますから何らかのサウンドでしょうか? ジャンパピンは選曲用で、これもオルゴールでしょうか?

ICのGSE3568で検索してみると「バトルサウンド」と呼ばれる効果音発生キットみたいです。残念ながらICのデータシートは発見できませんでした。

回路はシンプルそのものです。奥の150kΩは周波数の調整用、ケミコンは電源に並列に入っています。データシートが無いので想像ですが、ほとんど参考回路そのものなのでは無いでしょうか。

P8052AH-BASICを動かす(動作編)

テーマ:

カテゴリー:

ハード編に引き続き今回は動作編です。

P8052AH-BASICはリセットしてもシリアルに何も出力してこないのでちょっと不安になりますが、スペースを送ってあげるとオープニングのメッセージが返ってきます。このスペースでターミナル側のボーレートを検出して自動的に合わせるようになっています。

クロック周波数をテキトーに決められるのはありがたいです。

間違ってスペース以外を送るとボーレート検出に失敗して正常に表示されないことがあります。その場合はリセットし直すしか無いと思います。

画面
無事に立ち上がったところで簡単なプログラムを動かしてみました。

P8052AH-BASICを動かす(ハード編)

テーマ:

カテゴリー:

P8052AH-BASICでボード製作中と書いてから一月近く経ってしまいましたが、やっと出来上がりました。

P8052AH-BASIC搭載ボード
動作確認ができる最小限の構成といったところです。

データ用メモリ空間の0000H~7FFFHに32kBのRAMを配置しています。プログラム用メモリ空間には何も接続していない(内蔵ROMのみ)のでBASICを使用する分には問題ありませんがネイティブコードを書いて実行することはできません。簡単な改造で対応可能なのでそのうち追加するかもしれません。

AVRプログラマ

テーマ:

カテゴリー:

昔使っていたAVRプログラマたちです。

AKI-AVR
これは秋月電子通商で扱っていたAKI-AVRキットです。

今はPIC用のAKI-PICでAVRの書き込みも可能になっていますが、以前はAVR専用のものがありました。

AVRの書き込みには12Vをかけてパラレルで書き込む方法とISPと呼ばれる通常電源のみでシリアルで書き込む方法があります。前者は主にライタのソケットに挿して書き込み、後者はターゲットボード上で書き換えることが可能です。
このキットはその形態からは前者のように思えますが、実は後者の方式で書き込みを行ないます。右端の6ピンコネクタを利用すればターゲット上での書換えも可能です。

続・SBC6303がM5L2764Kで動かなかった件

テーマ:

カテゴリー:

以前、SBC6303 が M5L2764K の個体差によって動いたり動かなかったりと書きました。

念のために n を増やしてみると、起動メッセージの途中で止まってしまう M5L2764K も見つかりました。リセットを繰り返すと止まる場所も一定していません。

動いたと思ったものも心配になってきます。試しにメモリダンプを実行してみると、案の定ダンプ中にハングアップしてしまいました。

ところで私の持っている 2764 は三菱の M5L2764K ばかりです。ふと他社のものでも同じだろうかと思って Intel の D2764 を調達して試してみました。するとどれも正常に動作するではないですか。64kB のメモリ空間全部をダンプさせてみても最後までいきます。

Intel のものと三菱のもので何かが違うようです。

MC6803を動かす

テーマ:

カテゴリー:

手配していたロジックICが到着したのでSBC6303ルーズキットMC6803を載せて試してみることにします。

SBC6303ルーズキット
そのままではMC6803を動かすのに支障があるので一部変更しています。

まずNMOSのMC6803と組み合わせるのに74HCシリーズはマズいので74HCTシリーズに換えます。キット資料によればLS/ALS/ASとありますが、VIHの問題なら74HCTでもいけるはずです。

Z8613を動かす (その4:とりあえず動きました)

テーマ:

いろいろやっているうちに何とか動き始めました。

まずはシリアルポートです。

Z8のシリアルはちょっと変わっていてシリアルのステータスレジスタがありません。それでは受信完了などをどうやって知るのかというと、割り込み要因レジスタを読むのです。ここまではマニュアルを読んでわかっていたのですが...

マニュアルを読み直していると、たとえ割り込みを使わないでポーリング処理をする場合でも一度EI命令を実行しないと割り込み要因レジスタが有効にならないのだそうです。

ポーリングでやるつもりでマニュアルの割り込みの部分をちゃんと読んでいなかったので気付かなかったのでした。

指示通りに初期化するとあっさり動くようになりました。

パラレルの方はアセンブラが原因でした。

前回書いたようにタイマT0の設定は出来ていました。パラレルポートも試しにプルアップ・プルダウンしながら電圧を測ると出力に設定されているようです。それなのに出力すべきデータが設定できていませんでした。

何が違っているのでしょう?

Z8613を動かす (その3:苦戦中...)

テーマ:

カテゴリー:

ボードも出来たし、アセンブラも用意できたので、いざ動かそうとしているのですが...

予想外に苦戦中です。

まず簡単に動作すると思っていたシリアルが動かない。

ならばとパラレルポートに出力させようとしたのですが、これも出てこない。

こんな基本的なものが動かないとなるとプログラムが走っていないのではという疑いがでてきます。使っているZ8613はパッケージの隅が欠けているくらいなので生きていない可能性すらあります。

小さなことでも良いのでプログラムが走っている証が欲しいところです。

ROMから命令フェッチしているのがわかればCPUが生きていることがわかります。オシロスコープでもあれば良いのですが、持っているのは古いアナログのものだけ、それもすぐには出てきません。

Z8613を動かす (その2:クロスアセンブラ)

テーマ:

ハードウェアが出来たら次はソフトウェアです。

Z8はハンドアセンブルできないほど複雑ではありませんが、アセンブラくらいは欲しいところです。今回のZ8だけでなくSBC6303ボードのHD63C03やMC6803、さらには手持ちのいろいろなプロセッサにも使いたいので出来れば多くのプロセッサに対応しているとありがたい。

ということで候補に挙がったのが「The Macroassembler AS」です。

開発ペースは遅い(というか止まっている?)ようですが、現時点でかなりの数のプロセッサに対応しています。8ビットが中心ですが、16ビット以上にも一部対応といったところでしょうか。マクロは使えますが、リロケータブルオブジェクトの出力は出来ません。

GNU binutils(の中の「as」)にも期待していたのですが、こちらは上とは逆で32ビットが中心で残念ながらZ8には非対応でした。

ページ