KM-Z80 mini version 0.2
2013年6月15日
KM-Z80 mini は、Microship の PIC32MX150F128B を用いた、1チップのSHARP MZ-80K 互換マイコンです。
最初の正式バージョンとして、version 0.2 を公開します。
KM-Z80 mini version 0.2 のダウンロードはこちらから。
ライセンスは、私がソースコードを書いた部分は、LGPL v2です。ただし、CG-ROMとモニターROMに関する部分は別のライセンスになっているので、注意して下さい。これらのROMデーターを取得したMZ-700 Emulatorのサイトによると、KM-Z80 mini は「営利を目的としない限り自由」に使用可能なライセンスで配布可能だと理解しています。
KM-Z80 miniは、まだ完成とは考えていません。と言うのは、水晶発振が安定せず、動かないことが在るからです。一号機はしっかり動いているのですが、同じ回路で作成した下記の二号機がどうなったかというと。
![2013-06-15-mini2.jpg](/jeans/skins/media/1/2013-06-15-mini2.jpg)
![2013-06-15-mini.jpg](/jeans/skins/media/1/2013-06-15-mini.jpg)
完成した直後5分間は動いたものの、その後動かなくなりました。水晶発振がうまく行かないのが、動かない理由です。
この辺りの改善を目指して、次のバージョンを考えたいです。この記事の読者の方で、何か参考になることなどご存じで在れば、教えて頂ければ嬉しいです。
(追記:水晶発振を安定化させたバージョン0.3を公表しました。)
最初の正式バージョンとして、version 0.2 を公開します。
KM-Z80 mini version 0.2 のダウンロードはこちらから。
ライセンスは、私がソースコードを書いた部分は、LGPL v2です。ただし、CG-ROMとモニターROMに関する部分は別のライセンスになっているので、注意して下さい。これらのROMデーターを取得したMZ-700 Emulatorのサイトによると、KM-Z80 mini は「営利を目的としない限り自由」に使用可能なライセンスで配布可能だと理解しています。
KM-Z80 miniは、まだ完成とは考えていません。と言うのは、水晶発振が安定せず、動かないことが在るからです。一号機はしっかり動いているのですが、同じ回路で作成した下記の二号機がどうなったかというと。
![2013-06-15-mini2.jpg](/jeans/skins/media/1/2013-06-15-mini2.jpg)
![2013-06-15-mini.jpg](/jeans/skins/media/1/2013-06-15-mini.jpg)
完成した直後5分間は動いたものの、その後動かなくなりました。水晶発振がうまく行かないのが、動かない理由です。
この辺りの改善を目指して、次のバージョンを考えたいです。この記事の読者の方で、何か参考になることなどご存じで在れば、教えて頂ければ嬉しいです。
(追記:水晶発振を安定化させたバージョン0.3を公表しました。)
コメント
e.naka (2013年6月24日 07:07:39)
回路図には9pinと10pinの間に帰還抵抗が書いていないんですが、いらないんでしょうか。
Katsumi (2013年6月27日 10:12:50)
e.nakaさん、こんにちは。
コメント、有り難うございます。そこの部分ですが、PIC内部に2-10 MΩの抵抗がありますので、必須ではありません。
記事にある、水晶発振の不安定性を解消するための手段として、一度1 MΩの抵抗をそこにつないでみた事が有ったのですが、不安定性は解消できませんでした。どうやら、他に問題があるようです。
コメント、有り難うございます。そこの部分ですが、PIC内部に2-10 MΩの抵抗がありますので、必須ではありません。
記事にある、水晶発振の不安定性を解消するための手段として、一度1 MΩの抵抗をそこにつないでみた事が有ったのですが、不安定性は解消できませんでした。どうやら、他に問題があるようです。
sibu2 (2013年7月1日 08:54:35)
渋谷と申します。
いつも楽しみに見せていただいています。
発振回路の件、見当違いかもしれませんが私の考えを書かせてください。
発振回路からRA1とRB14もドライブさせようとしていますよね。どのような水晶振動子をお使いなのかわかりませんが、配線の浮遊容量も増えますし負荷も増えてしまいますので、まずここを外してみてはいかがでしょうか。
代わりに空いているピンをREFCLKOに設定し、そこにPOSCを出すようにすると水晶振動子のクロックと同じクロックが出力されると思います。これをRA1とRB14に配線すれば今までと同様に8MHzのタイマが使えると思います。
いつも楽しみに見せていただいています。
発振回路の件、見当違いかもしれませんが私の考えを書かせてください。
発振回路からRA1とRB14もドライブさせようとしていますよね。どのような水晶振動子をお使いなのかわかりませんが、配線の浮遊容量も増えますし負荷も増えてしまいますので、まずここを外してみてはいかがでしょうか。
代わりに空いているピンをREFCLKOに設定し、そこにPOSCを出すようにすると水晶振動子のクロックと同じクロックが出力されると思います。これをRA1とRB14に配線すれば今までと同様に8MHzのタイマが使えると思います。
Katsumi (2013年7月1日 10:06:56)
渋谷さん、こんにちは。
ご指摘をどうも有り難うございます。渋谷さんご指摘の件については、何度かテストした事がございまして、RA1とRB14への接続を切っても、安定しなかったのです。他に原因がありそうです。NTSCのビデオシグナルを作成しようとしたときに良く起こる現象なので、そのあたりで何かあるのかなと思っています。水晶発振子ではなく、スタンドアローンの水晶発振器を試したりしていますが、同じ現象です。
もちろん、水晶発振の部分を他に使い回すのは良くないので、おっしゃるようなREFCLKOを出力して、そこからクロックを得る方向で、次のバージョンを検討しています。どうも有り難うございます。
ご指摘をどうも有り難うございます。渋谷さんご指摘の件については、何度かテストした事がございまして、RA1とRB14への接続を切っても、安定しなかったのです。他に原因がありそうです。NTSCのビデオシグナルを作成しようとしたときに良く起こる現象なので、そのあたりで何かあるのかなと思っています。水晶発振子ではなく、スタンドアローンの水晶発振器を試したりしていますが、同じ現象です。
もちろん、水晶発振の部分を他に使い回すのは良くないので、おっしゃるようなREFCLKOを出力して、そこからクロックを得る方向で、次のバージョンを検討しています。どうも有り難うございます。
Katsumi (2013年7月22日 10:58:22)
水晶発振が停止する件について、原因をほぼ特定し、解決策を得ました。新しいバージョン、ver 0.3を近日公開します。
kanzo (2013年7月27日 02:20:13)
すばらしい。AVR-CPMとCP-Mega88の感動が再びよみがえって来ました。save/loadはまだ試していません(MZ700winが見つからず練習出来ないので)が、完全に動いています。何もかもソフトで出来るのですね。pic-mx32、Psoc、Propeller、AVRと全部試しています。どれもすばらしいです。これからますます進歩するのでしょう。ああ、いそがしい。 お礼・感謝、いっぱいです。pic32mxはmipsの名前に惹かれて手を出しました。 \(^o^)/
Katsumi (2013年7月27日 16:34:31)
kanzoさん、こんにちは。
どうも有り難うございます。その通り、すべてソフトで駆動しています。CP/Mは、いずれやってみたいと思っています。
ATmega88は、8ビットのチップで8080をエミュレートしているんですね。凄いです。
どうも有り難うございます。その通り、すべてソフトで駆動しています。CP/Mは、いずれやってみたいと思っています。
ATmega88は、8ビットのチップで8080をエミュレートしているんですね。凄いです。