2014.7.22

前へ
次へ
ホームページトップへ戻る

MYCPU80でCP/Mを!
超巨大基板の8080互換HCMOS・CPUでCP/Mを走らせてしまおうという、なんとも狂気なプロジェクトです!


[第2回]


●やっぱりまずはハードウェアから

前回はのっけから、ソフトウェアが大変なことになりそうです、という風な書き出しで始まりました。
いや、実際冗談ではなくて本当に大変な作業になってしまっております。
それがどんな具合になっておるのかにつきましてはこれから少しずつ説明をしていきますが、やっぱりまずはハードウェアについて見ていただくことにいたします。

MYCPU80の全体写真です。
とにかく巨大の一語に尽きます。

左下に取り付けられているのが、増設メモリ基板です。

こちらは増設部分の写真です。

増設メモリ基板の裏側には基板結合用のコネクタが取り付けてあって、その部分をMYCPU80の左下の拡張バスコネクタに上から差し込む形で両者を接続しています。
MYCPU80は配線の都合でIOWRやRESETなどの制御信号を拡張バスコネクタの近くに配置することができませんでした。
そのため必要な制御信号は16pinフラットケーブルで制御信号用コネクタに接続して増設メモリ基板に供給しています。
増設メモリ基板上の26pinと16pinのコネクタはさらにここから拡張をする場合のためのコネクタです。

こちらは増設メモリ基板の回路図です。

考え方はND80ZV用の増設メモリ基板と全く同じです。
MYCPU80基板上には32KBのROMと32KBのRAMが実装されていて、TK−80モニタモードの設定のときには、アドレス0000〜7FFFがROMで8000〜FFFFがRAMになります。
増設メモリ基板をとりつけた場合には、増設メモリ基板上にも32KBのRAMが実装されていて、それがROMと同じアドレス0000〜7FFFに割り当てられます。
増設RAMとROMが同時にセレクトされないように、どちらか一方を選択してアクセスするための回路が74HC138、HC175、HC32によって構成されています。
I/Oアドレスの9C〜9Fにビット3が1であるような値を出力すると、それ以後は増設メモリ基板上のRAMが選択され、それとは逆にビット3が0であるような値を出力すると、MYCPU80上のROMが選択されます。
I/Oアドレス9C〜9FはTK−80回路のキースキャンのための信号出力に使われていて、その出力にはD0〜D2しか使われていません。
そこで使われていないD3をROMとRAMの切換えに利用するという回路で、これはND80ZVの増設メモリ回路と同じ考え方です(ND80Z3.5では本体基板上に同様の回路を実装しています)。

なおMYCPU80に実装しているROMに書かれているTK−80モニタプログラムのキーアクセスルーチンではI/Oアドレス9CにFE、FD、FBを出力しています。
このままではモニタスタート直後に増設RAMが選択されてしまいシステムが暴走してしまいますので、増設メモリ基板用にその部分をF6、F5、F3を出力するように変更してあります。

MYCPU80でCP/Mを![第2回]
2014.7.22upload

前へ
次へ
ホームページトップへ戻る