LCD Z80(Rabbit2000)に萌えたい。11-I2CでキャラクターLCD表示 2021年6月23日 Rabbit2000のI/O空間にI2C用ICのPCA9564Dを接続して、I2C経由でキャラクターLCDを表示させたいと思います。使用したLCDは、Z8S180でも使用した「KKHMF DC 5V 1602 LCD ディスプレイモジュール 16×2キャラクタ LCDブルーブラックライト」と「EasyWordMall ... pengin
LCD Z80(Rabbit2000)に萌えたい。10-外部クロックとキャラクターLCD表示 2021年6月20日 クロックを内部クロックで行っていましたが、安定化のために外部クロックにしました。周波数は、シリアル通信で使用するクロックで割り切れる値で、18.4320MHzとしました。 シリアルクロック用の分周値(TAT4Rレジスタ)は18432000/2/16/38400-1で0x0eをセットします。 ld a,0x0e ;A-c... pengin
monitor Z80(Rabbit2000)に萌えたい。9-クロックとモニタの改善 2021年2月21日 最初のモニタでHEXファイルをダウンロードするとエラーが発生してうまくダウンロードできない状況が発生していました。原因を探るべく、rabbit2000に萌えてみました^^。 原因は、シリアルクロックが微妙に合っていないことのようです。シリアルクロックはメインクロックから分周しているので、メインクロックが微妙にずれている... pengin
monitor Z80(Rabbit2000)に萌えたい。8-最初のモニタその2 2021年2月5日 rabbit2000特有の命令文に変更して、移植した「最初のモニタ」の動作を確認してみました。 最初にHelpメニューを表示してみました。 Monitor Rabbit2000 ver0.71 by Pinecone 2021/2/5 >? ? Help d memory dump m memory change ad... pengin
monitor Z80(Rabbit2000)に萌えたい。7-最初のモニタその1 2021年2月2日 前回でシリアル通信ができるようになりましたので、これまでのZ80 ボードに使用した「最初のモニタ」を移植していきたいと思います。 モニタを移植する上で、これまでのZ80との相違点はおおまかに次の3点です。1、条件付きCA…... pengin
Rabbit2000 Z80(Rabbit2000)に萌えたい。6-シリアル通信その2 2021年1月31日 実際にシリアル通信のプログラムを作成していきたいと思います。 条件として、ボーレート38400bps(システムクロック19.6608MHz使用時)、8bitキャラクター、1ストップビット、ノンパリティーの設定(81N)で通信を行います。また、cポートのRxA(PC7-51pin)/TxA(PC6-54pin)を使用しま... pengin
Rabbit2000 Z80(Rabbit2000)に萌えたい。5-シリアル通信その1 2021年1月29日 Rabbit2000のシリアル通信は、非同期シリアル通信4chと同期式シリアル通信2chが用意されているようです。今回は非同期シリアル通信を行いますので、4chのうち1chだけ使用します。ハード的にはC portに4ch…... pengin
Rabbit2000 Z80(Rabbit2000)に萌えたい。4-RAM動作確認 2021年1月28日 今回はRAMの動作確認を行っていきます。 今回配置するRAMの論理アドレスと物理アドレスの関係は下記のようになります。 ROMは0x0000~0X7fffまでROM容量に応じてアドレスを占領します。RAMは、64K論理ア…... pengin
Rabbit2000 Z80(Rabbit2000)に萌えたい。3-ROM動作確認その2 2021年1月26日 今回から使用するアセンブラは以前から使用しているasxxxxのr2kとaslinkです。ラズベリーパイのRaspbian(OS)上で行っています。asxxxxのラズベリーパイへのインストールは姉妹ブログのこちらを参照くだ…... pengin
Rabbit2000 Z80(Rabbit2000)に萌えたい。2-ROM動作確認その1 2021年1月25日 rabbit2000のリセット後の動作は、SMODE端子によって動作が異なります。SMODE0(36pin)、SMODE1(35pin)の2つの端子より4つのモードがありますが、ここでは、リセット後メモリの0x0000か…... pengin