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

[新連載]復活!TINY BASIC
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
すべてはここからはじまりました。
中日電工も。
40年前を振り返りつつ新連載です。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜



[第95回]


●とりあえずの最終版です

前回までのところで、「中日電工版」TINY BASICにZB3BASICのバイナリファイルセーブ、ロードの機能を利用してテキストエリアをセーブ、ロードできるようになりました。
また前回、前々回でTBFファイルからTXTファイルへの変換プログラムと、TXTファイルからTBFファイルへの変換プログラムを作成しました。
「中日電工版」TINY BASICについてはもうひとつ機能追加したいものがあるのですが、とりあえずは一応の区切りということで、現時点での最終版をダウンロードしていただけるように下にリンクをまとめました。
エンドコードの問題を回避するためとウイルスチェッカーにダウンロードを拒否されないために拡張子を変更してあります。
ダウンロード後に
tx2→txt
bbb→bin
ccc→cpp
eee→exe
に変更してお使いください。
詳しくは[第87回]および[第41回][第42回]をご参照ください。
またダウンロード後のアセンブル作業や、ZB3BASICにロードして実行する手順などについては[第33回]を参照願います。

1)「中日電工版」TINY BASICの現時点での最終版ソースプログラムです。
拡張子を本来のtxtからtx2に変えてあります。
ダウンロード後に拡張子をtxtに変更してください。
テキストファイルですからメモ帳、TeraPadなどのテキストエディタで開けます。
ND80Z3.5などに附属の8080アセンブラASM80.comにかけてバイナリファイルを作ります。

tinybste.tx2

2)tinybste.txtをASM80.comにかけて作成したバイナリファイルです。
拡張子を本来のbinからbbbに変えてあります。
ダウンロード後に拡張子をbinに変更してください。

tinybste.bbb

3)TBFファイルからテキストプログラムのみを取り出してTXTファイルを作成します([第93回]参照])。
拡張子を本来のcppからcccに変えてあります。
ダウンロード後に拡張子をcppに変更してください。
Borland C++コンパイラ(Bcc55)でコンパイルします。
[2020.9.26注記]プログラムミスがみつかりましたので修正済みのファイルと差し換えました。本日(9/26)よりも前にダウンロード済みでしたら旧ファイルを削除して下記のファイルを再ダウンロードしてください。

tbf2txt.ccc

4)上記tbf2txt.cppをBorland C++コンパイラ(Bcc55)でコンパイルして作成した実行ファイル(EXEファイル)です。
拡張子を本来のexeからeeeに変えてあります。
ダウンロード後に拡張子をexeに変更してください。
[2020.9.26注記]プログラムミスがみつかりましたので修正済みのファイルと差し換えました。本日(9/26)よりも前にダウンロード済みでしたら旧ファイルを削除して下記のファイルを再ダウンロードしてください。

tbf2txt.eee

5)TXTファイルからTBFファイルを作成します([第94回]参照])。
拡張子を本来のcppからcccに変えてあります。
ダウンロード後に拡張子をcppに変更してください。
Borland C++コンパイラ(Bcc55)でコンパイルします。

txt2tbf.ccc

6)上記txt2tbf.cppをBorland C++コンパイラ(Bcc55)でコンパイルして作成した実行ファイル(EXEファイル)です。
拡張子を本来のexeからeeeに変えてあります。
ダウンロード後に拡張子をexeに変更してください。

txt2tbf.eee

●ND8080、ND80KL/86(KL5C80A12版)で確認しました

「中日電工版」TINY BASICは今まではND80Z3.5のZB3BASICの上で動作テストを行なってきました。
ND80Z3.5のCPUはZ80ですが、TINY BASICは8080の命令だけでプログラムしていますから、CPUが8080のボードND8080や、Z80CPU互換のKL5C80A12を搭載したND80KL/86(KL5C80A12版)でも理屈の上では動作して当たり前ということになります。
問題は「中日電工版」TINY BASICがZB3BASICの基本的なサブルーチンを一部CALLして使っていることです。
もっともZB3BASICのごくごく基本的な機能のみを使っているだけですから、ND80Z3.5で動くならばND8080でもND80KL/86(KL5C80A12版)でも多分動くはず、とは思っていました。
しかし「はず」だけで終ってしまってはいけません。
やっぱりテストを行なってそこのところを確実なものにしておかなければいけません。
ということで念のためND8080とND80KL/86(KL5C80A12版)でもND80Z3.5と同じテストをしてみました。

こちらはND8080でのテスト画面です。

N8ZB3.EXEで起動しました。
前回お見せしたND80Z3.5でのテスト画面と比較すると先頭の*** nd8080 zb3basic ****と表示されているところ以外は同じです。
ND8080は大丈夫のようです。

次はND80KL/86(KL5C80A12版)でのテストです。
ND80KL/86(KL5C80A12版)には2つのシステムROMが附属します。
ND80Z3.5と同じZB3BASICROMとKL5C80A12用のZBKBASICROMです。
TINY BASICを実行するときはZB3BASICROMを実装しND80Zモードで起動します。
下はND80KL/86(KL5C80A12版)でのテスト画面ですが、ND80Z3.5と同じシステムROMを使い、ZB3.EXEで起動していますから、前回のND80Z3.5でのテスト画面と全く同じです。

ND80KL/86(KL5C80A12版)でも動作することが確認できました。

復活!TINY BASIC[第95回]
2020.9.20upload

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