超小型Z80マイコン(その4)GAME言語で動作確認 [Z80]
前回の記事で Z80 からの表示要求により hello 表示ができたことを書きましたが、色々弄っていると動作が不安定であることが判りました^^;
データバスへの出力タイミングやウェイトの開放タイミング等を見直し、漸く安定動作するようになり、動作確認のために GAME 言語を入れてみました。
前回の記事で書いた boot ROM 機能では最大 256 バイトのコードまでしか対応できないので、これを何回か繰り返して大きなサイズに対応する方法も考えられますが、以前作成した 256 バイトに収まる Hex ファイルのローダーを移植してみることにしました。
下記が Hex ファイルローダーのソースリストになります。ロード完了後に ロード対象の開始アドレスにジャンプする機能を追加しました。
GAME 言語のコンソール入出力部分も Z80PicCompact に合わせて変更する必要がありますが、下記のように極めてシンプルなものになります。
動作確認のために所有している GAME 言語のソースの中で一番大きなもの(=コンパイラ)を使って確認した結果、安定に動作することが確認できました。表題からは GAME 言語でチェックプログラムでも作ったのかと思われた方もいらっしゃったかもしれませんがコンパイラを動かしてみたという落ちでしたw
今回使用している USB 機能内蔵 PIC での CDC(Communication Device Class) クラスでは usb_device_cdc.c 内にある CDCInitEP() の処理内で line_coding.dwDTERate にボーレートを 9600 で設定している部分があるのですが、この値に関わらずパソコンとの通信速度は爆速です。TeraTerm 側の通信速度設定の影響も受けないようです。
Twitterに投稿した動画付きコメントを貼っておきます。GAME 言語のコンパイラをコンパイルしているだけですが、ロードの爆速ぶりとコンパイラのなつかしさを堪能してください。
[TOP] [ 前へ ] 連載記事一覧 [ 次へ ]
データバスへの出力タイミングやウェイトの開放タイミング等を見直し、漸く安定動作するようになり、動作確認のために GAME 言語を入れてみました。
前回の記事で書いた boot ROM 機能では最大 256 バイトのコードまでしか対応できないので、これを何回か繰り返して大きなサイズに対応する方法も考えられますが、以前作成した 256 バイトに収まる Hex ファイルのローダーを移植してみることにしました。
下記が Hex ファイルローダーのソースリストになります。ロード完了後に ロード対象の開始アドレスにジャンプする機能を追加しました。
Z80PicCompacy 用 Hex ファイルローダー( Z80 アセンブラ) |
|
GAME 言語のコンソール入出力部分も Z80PicCompact に合わせて変更する必要がありますが、下記のように極めてシンプルなものになります。
GAME 言語用の入出力処理( Z80 アセンブラ) |
---|
8C96 CD 8C9F GETCH: CALL CONIN 8C99 C3 8CA2 PUTCH: JP CONOUT 8C9C C3 8CA5 KBHIT: JP CONSTS 8C9F DB 00 CONIN: IN A,(DATPORT) 8CA1 C9 RET 8CA2 D3 00 CONOUT: OUT (DATPORT),A 8CA4 C9 RET 8CA5 DB 01 CONSTS: IN A,(CMDPORT) 8CA7 0F RRCA 8CA8 C9 RET |
動作確認のために所有している GAME 言語のソースの中で一番大きなもの(=コンパイラ)を使って確認した結果、安定に動作することが確認できました。表題からは GAME 言語でチェックプログラムでも作ったのかと思われた方もいらっしゃったかもしれませんがコンパイラを動かしてみたという落ちでしたw
今回使用している USB 機能内蔵 PIC での CDC(Communication Device Class) クラスでは usb_device_cdc.c 内にある CDCInitEP() の処理内で line_coding.dwDTERate にボーレートを 9600 で設定している部分があるのですが、この値に関わらずパソコンとの通信速度は爆速です。TeraTerm 側の通信速度設定の影響も受けないようです。
Twitterに投稿した動画付きコメントを貼っておきます。GAME 言語のコンパイラをコンパイルしているだけですが、ロードの爆速ぶりとコンパイラのなつかしさを堪能してください。
20ピンのPIC使用の3チップ構成小型Z80ボードを検討中
— skyriver (@wcinp) October 10, 2022
Z80からのhello表示は出来たものの動作が不安定だったのでタイミングを見直して動作が安定になった^^
動作確認のためにHexローダーを移植しGAME言語のコンパイラをコンパイルしてみたhttps://t.co/bcOONd4TcV#Z80PicCompact #Z80 #PIC18F14K50 pic.twitter.com/yQUuZmJjVQ
[TOP] [ 前へ ] 連載記事一覧 [ 次へ ]
コメント 0