工作

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

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

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

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

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

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

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

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

  • 本当に失われた

F8 I/Oボード(その1: F8のメモリアクセス)

2021-02-08 12:16 — asano

テーマ

カテゴリー

SBCF8では8251はメモリマップされています。でもF8にはIN/OUT命令が存在しますので、何とかI/O空間にマップできないかやってみようと思います。

これF8(F3850)の特殊性を知らないと難しさがわからないと思うので簡単に書いておきます。

まずF3850にはアドレスバスの出力がありません。他の信号とマルチプレクスされているといったレベルではなくありません。

アドレスレジスタも(プログラムカウンタすら)ありません。

プログラムカウンタ(以下PC0)無しでどうやって動くのかというと、PC0はメモリ側が持つことになっています。

MN1613のステップ実行(その5)

2021-02-06 23:44 — asano

テーマ

カテゴリー

これまで不明だったリセット解除直後のX'0000'番地からのI/Oリード、X'0000'以外の値を返したら何が起きるか?ということでその3で予告したIORサイクルでデータバスに値を送り込む回路を追加しました。


空だったソケットにはSN74LS541Nを載せました。

下に並ぶショートピンの群れは値の設定用、8ビットのところで区切りがわかるように空けておきます。写真の状態でX'F010'を設定しています。

右上端のショートピンは74LS139でデコードしたIORを74LS541に供給するためのもの、抜けば"H"に固定されるので以前と同じ動作になります。

SBCV20

2021-01-24 23:49 — asano

テーマ

カテゴリー

電脳伝説@vintagechipsさんの最新作SBCV20ルーズキット、発売と同時に注文したところ翌日に到着したので早速組んでみました。


今回は事前に必要な部品は確保していたので素直に組めました。とはいっても新規に調達が必要だったのは19.6608MHzのクリスタルのみです。

組み方としてはV20用のほか8088用にもできますが、8088は8088ボードで動かせているので今回はV20用で組むことにします。

MN1613のステップ実行(その3)

2021-01-19 18:25 — asano

テーマ

カテゴリー

(その2)から1年以上経ってしまいましたが、ちょっと動きがあったので続きを書きます。

前に買ったのとは異なるショップでMN1613を発見、在庫も豊富なようだったので予備ということでもう一つ買ってしまいました。


さすがにこの特徴あるパッケージ、リマーク品の可能性はほぼ無いと思いますが、動作確認はしておきたいところです。

SBCZ8002(ソフトウェア編)

2021-01-06 23:32 — asano
カテゴリー

前回ハードウェアが無事に動作するようになったのでUniversal Monitorの移植してみました。

年末から初期化部分などを細々と書いていましたが、本格的に書き始めたのは年が明けてボードが動き始めてからです。それでも3日にはI(n)/O(ut), R(egister)コマンドまで動作しましたからこれまでの最速記録ですね。確かに慣れてきたという側面はありますが、Z8000がアセンブリ言語で書きやすいプロセッサだというのは間違いないでしょう。

今回はその過程で気になった点についていくつか書いてみたいと思います。

リセットの怪

シャープのマニュアルによるとZ8002のリセット時の動作について以下のように書かれています。

Z8002では,最初のサイクルで,0002H番地からFCWを読み出し,0004HH番地からPCを読み出し,つぎの最初の命令フェッチ・サイクルからプログラムがスタートする。

SBCZ8002(動作編)

2021-01-01 23:31 — asano

テーマ

カテゴリー

2021年、今年もどうぞ宜しくお願いいたします。

さて昨年末に組み立てたまま動かずに悩んでいたSBCZ8002ですが、動作するようになりましたのでその顛末を書いておきます。

まずはすぐに使える周波数カウンタとテスタで見られるところから見ていきました。

A0はリセット直後は変化ありますがその後は"L"のままです。

A1A11は次のような周期で変化し続けています。

SBCZ8002(組み立て編)

2020-12-29 23:46 — asano

テーマ

カテゴリー

愛用しているアセンブラAS、最近Z8000に対応しました。そういえばZ8002のボードSBCZ8002を買ったままになっていたのを思い出し、組み立ててみました。


いつもの 電脳伝説@vintagechips さん作のボードです。

先日のSBCF8ではいくつか手持ちのない部品があって代用しましたが、今回は必要な部品はすべて手持ちがあったので買出しなど不要でいきなり組み立てに入れました。

SBCF8

2020-12-01 23:17 — asano

テーマ

カテゴリー

SBCZ80SBC6809などのSBCシリーズでお馴染みの 電脳伝説@vintagechips さんの最新作 SBCF8、Fairchild F8(F3850+F3853)ボードです。


SBCシリーズの基板はこれまでスイッチサイエンスさんあるいはオレンジピコショップさんで販売されていたのですが、このSBCF8についてはF3850とF3853があまりに入手難易度が高いということで販売の目処が立っていないようです。

TMP90C840ボード(ソフトウェア編)

2020-11-30 17:29 — asano

ちょうどTMP90C840用にUniversal Monitorの修正をしている最中、F3850+F3853用の試作基板を貰えることになり組み立て・動作確認をしていたため、予想以上に遅くなってしまいました。

TMP90C840ボードは以前のTMP90P802ボード用に書かれているUniversal Monitor TLCS-90そのままでも動作し0000H~0FFFFHまでの64kBのメモリ空間が使えますが、TMP90C840は最大1MBまでのメモリ空間をサポートしていますのでそれを使えるように拡張します。