2021年5月20日木曜日

W65C816も動作する6502基板を製作してみました

 6502基板を新たに製作し、W65C816をネイティブモードで動作させてみました


首を長くして待っていた基板がようやく届きました。

今回製作したものはFM-7/77用拡張I/O基板、FM77AV用Z80カード韋駄天、6502/65816基板の3種です。
拡張I/O基板は過去2回作り直していますが、今回のものはMAX232CとFT-232モジュールを外し、空いたスペースに2.45MHzの発振回路を追加することでFM-7の50P拡張コネクタに対応したものです。また、Z80カード韋駄天は第1作が動作するかどうかを確認するためだけに手間をかけずに製作したため、電源ラインが細いことやシルク印刷を省略していることなどが不満で、ちゃんとしたものに作り替えたいというものです。

今回報告する6502/65816基板ですが、以前報告しましたように、ほうめいさんから頂いたドータボードPLDR6502を自作6802ボードに搭載してW65C02を動作させることができましたし、その後、CPUをW65C816に交換してエミュレーションモードで動作することを確認していました。
しかし、動作したとなると6802ボードに間借りしたものでは如何にもW65C816がかわいそうということで、専用の基板を作ることにしました。


6502/65816基板


6502を使用した他の(市販)機器との互換性などを考慮する必要は全くありませんので、今までに製作した6802ボードや6809ボードと基本部分を同様にしましたが、データアクセス用のACIA(63B50)を減らしてその代わりに拡張コネクタを追加しました。

回路図

上位の32KBは必要に応じてRAM/ROMのどちらも使用できるようにしてあります。
データシートを見ると、ピン3のABORTBとピン36のBEをプルアップしてやればよいようですので、ピン36は常にプルアップし、ピン3はジャンパ―ピンで切り替えられるようにしてあります。

製作してみました。
右端の未配線の部分は拡張用のコネクタの取り付け部ですが、まだ取り付けていません。

完成したボード

基板ですがいつものようにポカがあり、LEDのアノードマークのAがカソード側に表示されていましたが、その他には特に不具合もなくあっさりと動作しました。

画像では、前回のドータボードで動作していたCPU, モニタROM, BASICROMをそのまま装着していますが、これで動作しています。

このLEDはピン35のE出力に接続してありW65C816がネイティブモードに入った時に点灯するようにしてあるのですが、リセット後にWozモニタで下記のようなコードを実行することで、ネイティブモードとエミュレーションモードを切り替えることができるようです。


モード切り替えコード


モード切り替え実行の様子


1000番地から実行すると画像のようにLEDが点灯し、1008番地から実行すると消灯することからモードの切り替えはできているようですが、6502については使用経験が全くないので、これ以上のことは今のところ私には分かりません。



LEDが点灯しています

6800や6809を長く使い続けてきた私の感覚では、6800ですら使いにくいCPUですのに、さらにレジスタも少ない6502ではプログラムを制作しようという気には全くなれませんが、大昔とはいえ、6502でAppleIIを創り上げたウォズニアックさんやVisiCalcのような実用ソフトを制作した方々には本当に頭が下がります。今は開発環境としてはとても恵まれていると思いますが、それに見合った結果が出せているのかと思うと...

65816なら6502よりもプログラムを作りやすいのではないかと思いますので、しばらくはこのボードでW65C816のプログラミングの練習をしてみようかと思っています。


0 件のコメント:

コメントを投稿