現在地

工作

工作

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

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

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

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

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

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

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

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

  • 本当に失われた

GAL動かしてみた 第1回:開発環境

テーマ:

カテゴリー:

ちょっと訳あってGAL動かしてみました。

これまでにも勤務時代にAltera(今はIntelになっています)のEPM7128とかLatticeのLC5256MVなんかは使ったことがありました。公式には私はソフトウェア担当だったのですが、いろいろあって回路やこのようなPLDの設計も何度かやる機会もあったのです。

個人的にはGALやXilinxのXC9500など必要になったら使えるようにデバイス調達したり書き込み環境準備したりしていたのですが、いつも汎用ロジックで何とかなってしまい実践する機会がありませんでした。

とはいえMUTIF09のように人さま設計のもの書き込んで使う機会は何度かあったのでまったくの無駄ではありませんでしたが...

そんな中、機会が到来しました。

SBC6800で6502を

テーマ:

カテゴリー:

SBC6800MC6800のマイコンボードですが、ほうめいさんがちょっとした改造あるいはソケットの細工で6502を動作させています。

当初は6502ボードもあることだし静観していたのですが、WDCのW65C02(私の6502ボードではなぜか動いていない)の動作報告も出てきたので比較用に動かしてみることにしました。

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

カテゴリー:

TMS9995ボードUniversal Monitorの基本部分(D,G,Sコマンド)の移植ができましたので、アセンブリ言語でプログラミングしてみて感じたことを書いてみようと思います。

  • 豊富なレジスタ
    16と数が多いだけではなく基本的に対等なのでやりくりに苦労することがあまりありません。まぁ実態はメモリの一部なので直接メモリアクセスするのに比べメリットは少ない(命令長が短くなる・一部レジスタ専用の命令がある)ですが。

TMS9995ボード (ハードウェア編)

テーマ:

カテゴリー:

何年も前に入手したままになっていたTMS9995、やはり動かしてナンボだと思うのでEMILY Boardで動かしてみることにしました。

TMS9995ボード
EMILY Board用のCPUボードはいつも似たようなものになります。

これ、自然とそうなるというだけではなく、敢えてそうしている面もあります。EEPROMとオシレータとかどのボードにもある部分はなるべく共通にして機械的に作業できるようにしています。このボードにはありませんがアドレスラッチなども同様です。

W65C02続報

テーマ:

カテゴリー:

動かないまま保留しているWDCのW65C02ですが、先日efialtes_htnさんよりVihを満たせていないのではないかとのコメントを頂き、入力ピンの電圧を確認してみました。

  • BE, RDY, SOB
    これらはVihとしてVDD×0.7 = 3.5V以上を要求しますが、10kΩでVDDにプルアップされており問題ないと考えられます。

    実測でもそれぞれ4.98V, 5.00V, 4.98Vと問題ありませんでした。

MUTIF09

テーマ:

Universal Monitorを移植しようと組み立てたMUTIF09、他の石も載せてからと思っていましたが時間かかりそうなのでとりあえず現状です。

MUTIF09
MUTIF09はKasumi YOSHINO(JA1UMI)氏のシングルボードコンピュータボードで、資料はBOOTH・プリント基板はオレンジピコショップにて入手可能です。Universal Monitor移植に最低限必要なもの(と手持ちがあって迷いのないものの一部)を搭載しています。

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

テーマ:

カテゴリー:

MN1613のステップ実行(その1)以降、少し進展がありました。

一つ目はアドレスバスとMEMR, MEMWをLED表示する基板を用意したこと、これで1本ずつテスタで電圧を測る必要がなくなりました。

本当はIOR, IOW, FSYCなども見たいところなのですが、EMILY Boardのリボンケーブルを利用する形にしたので諦めました。アドレスの上位4ビットは未使用ピンに割り当てたのですが、あまり今回だけの信号を割り当てるのは避けたかったのです。数も少ないことですしテスタ対応すればすむことです。

データバスはコネクタまでは準備したのですがLEDは未実装です。ステップ動作中でもメモリの内容はEMILY Board側から自由に参照・変更できるのでとりあえず無くても何とかなりそうだからです。

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

テーマ:

カテゴリー:

以前、MN1613のリセット時に何かあるようだと書きましたが、このまま放置するのは気持ち悪いので少し追ってみることにしました。

16チャンネル以上のロジアナでもあれば簡単なのでしょうが残念ながら持っていません。

簡易タイプを買おうとも思うのですが、どうせ買うならもうちょっとと欲が出てしまいなかなか候補を絞れません。

幸いMN1613のメモリアクセスはハンドシェイクなのでそれを利用してステップ実行を試みることにします。

ステップ回路
手っ取り早く追加してみたのがこの回路です。

MN1613ボード(モニタ移植編)

テーマ:

前回は簡単なテストプログラムを動かしましたが、その後アセンブラもある程度動作するようになったのでいつものUniversal Monitorを移植することにします。

しばらくボードを動かしていなかったので念のためにもう一度小さなプログラムを試してみましたが、何故か動作が変というかいきなり暴走している感じです。
原因はいくつか考えられます。

  1. ボードかCPUが壊れてしまった
  2. (リセット動作には不明な点が多いので)以前動いたのは偶然だった
  3. アセンブラが誤ったコードを吐いている

ハンドアセンブルと比較したり、以前と同じコードを試したりで3.で無いことはすぐに判明しました。

ページ