PIC

KM-Z80 mini α version

2012年12月23日

KM-Z80 mini (PIC32MX150F128Bを使った、MZ-80K互換マイコン)最初の公開バージョン

2012-12-23-kmz80mini.jpg

一号機。期待通りの大きさに仕上げることができた。真ん中少し左の黒いICが、PIC32MX150F128B、その右、シルバーの箱がPS/2キーボードコネクタで、その下がビデオ及びサウンド出力用のコネクタ。あと主立った部品としては、一番左に8 MHzの水晶発振子、その少し上にPICkit3用のコネクタ。

回路図は、以下の通で、ほぼ決まり。

2012-12-23-kmz80mini.png
(C3, C4, C5はセラミックコンデンサーを使用のこと)

今後修正する可能性があるのは、発振子周り。ただし、2号機では水晶発振子ではなく、stand-aloneの発振器を用いることになる可能性が高い。安定した水晶発振は難しく、今回のものも試行錯誤で何とか発振するようになったが、ちょっとしたことですぐ発振が停止することがあるようだ。このあたりは、かなり吟味しないといけないことのようだし、あまりうまく行かないのなら、安定した発振器を使うのが確実。

使用ピンの割り振りを吟味して、後にPIC32MX250F128B(USBが使える)に移行することがスムーズにできるようにしてある。あと、RB0-RB7を開けてあるので、将来的にはMZ-80Kの中でこのI/Oポートを読み書きできるようにする予定。

Z80 CPUのエミュレーション部分は初め 1 MHz ぐらいでしか動いていなかったが、いろいろと改良を施した結果、現在のコードではほぼ 2 MHz で動くようになった。ただし、当初計画していた正確な 2 MHzでの動作はできなかった。これは、ビデオ信号など他の仕事にPICのリソースのかなり(4割ほど)を取られてしまうために、Z80のエミュレーションに回せる時間が足りなくなっているためである。40 MPISのDIP-PIC32MXでは、この辺が限界だと思われる。

MZ-80Kの機能のうち、大部分は実装した(RAMは、24K bytesを実装; GOTO$1200で、KM-BASICが使用可能)。まだ実装できていないもののうち、主なものはカセットテープインターフェースのみになった。上に述べたとおり、Z80 CPUが 2 MHz で正確に動いているわけではないので、テープからのデーターの読み取り部分と書き込み部分は、モニタープログラムを改変する必要があると思われる。

興味がおありの方は、こちらからダウンロードしてみてください。ライセンスは、とりあえず転載不可とします。ちゃんと出来上がったら、可能な部分はLGPLにして公開する予定です。
バージョン0.3は、こちら

コメント

e.naka (2012年12月28日 13:05:10)

シャープからMZ-80KのシステムプログラムとBASICのマニュアルのPDFが公開されました。
KM-Z80と合わせて素晴らしいコンピュータ教育学習環境が整いますね。

Kat (2012年12月29日 09:56:44)

マニュアル、公開されましたね。あの話が出始めた頃、てっきり有償での電子書籍化だと思っていたのですが、無償で取得できるのに、驚きました。有り難い限りです。私も早速、ダウンロードしました。

コメント送信