2018.7.31
前へ
次へ
ホームページトップへ戻る


KL5C80A12マイコンボードの製作

〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
KL5C80A12はZ80互換の高速高性能8ビットマイクロコントローラです。
残念なことに数年前に生産中止になってしまいました。
しかし当社ではKL5C80A12を使った組込みマイコンボードはまだ健在です。
そのKL5C80A12を使ったND80Z3.5上位互換マイコンボードの製作記事です。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

[第29回]


●Z80ラインアセンブラ(2)

このところ説明しておりますND80KL/86ボードキットなのですが、最初に記事としてUPしましたのが2016年の12月のことで、それからもう1年半余りが過ぎてしまいました。
実際にはその基板の設計にとりかかったのはそれよりも数ヶ月は前のことですので、準備作業を開始してから数えますとかれこれ2年近くが経ってしまいました。
途中ではせめてKL5C80A12版ND80KL/86キットだけでも今年の3月ごろまでには発売開始したい、などということを書いたりもしました。
で現在の状況は、といいますと。
やっとハードウェアの検証が終ったところで、ソフトウェアについてはほぼ形はできたというものの細かいところをやり残していますし、動作確認もこれからしていかなければなりません。
説明書についてはこれから作成作業にかかるところです。
そういう状況ですけれど、なんとかせめて7月中にはとりあえず発売開始のアナウンスをしたい、と思っておりました。
で、本日もなんとかその案内をと思ってまとめていたのですが、とても本日中にはまとまりそうにありません。
ですので明日、発売開始についてUPしたいと思います。

本日は前回の続きといいますか、Z80ラインアセンブラのもう少しまともなサンプルを見ていただくことにいたします。

前回はラベルについて簡単に説明をしました。
今回はラベルの使い方がよりはっきりわかるサンプルです。
プログラム外のアドレスはできればプログラム本文の先頭でまとめて書くようにします。
JP命令などの飛び先がプログラム内にあって、そのJP命令よりも前に出てくるときはこの例のように:(コロン)をつけてラベル指定をすることができます。
4004のLOOP:がそのラベルです。
4009のDJNZ命令のジャンプ先です。
DJNZはちょっと変わった命令です。
この命令のジャンプ先は相対アドレス表記なので手計算で算出するのは面倒です。
こういうときはアセンブラの出番です。
ラインアセンブラの便利さを納得していただけると思います。

前回と同じようにDMコマンドで確認したあとJPコマンドで実行しました。

そうそう。
前回はND80Z3.5のときの癖でつい8000から書いてしまいましたが、KL5C80A12版ZBKV3BASICのユーザーメモリエリアは4000から後ろになっています。
それで今回は4000からプログラムを書きました。
1015はAレジスタの値(ASCIIコード)を画面表示するシステムサブルーチンです。
システムサブルーチンについてもユーザーの参考になるように、近日中に簡単にまとめたいと思っています。

KL5C80A12マイコンボードの製作[第29回]
2018.7.31upload

前へ
次へ
ホームページトップへ戻る