パソコンをつくろう!(パソコン自作のすすめ)
組み立てキットを使って自作に挑戦!
[第447回]
●Wine(22)ZB3DOS.exeのリモートプログラムもスクロールできました
前回はND80Z3.5のユーザー様からリモートプログラムのメモリダンプ/dとリモートプログラムのステップ動作では最下行でスクロール表示ができませんというご指摘をいただきましたのでそのご指摘を受けてプログラム修正をしました。
printf(”¥n”);を追加したところうまく動作するようになりました。
今回はZB3DOS.exeも同じプログラム修正を行いその結果を確認しました。
ZB3DOS.exeはZB3.exeをベースにしてZBDOS(CP/M互換DOS)のための機能拡張をしたものなので土台は共通しているはずです。
前回ZB3.exeに対して行なったのと同じ修正を行なえば正しく動作するはずなのですが念のための動作テストです。
ND80Z3.5をUSB接続してプログラム修正をしたZB3DOS3UTE.exeを実行します。

ND80Z3.5で[I/O][8]を入力することで「リモートモード」にエントリしました。

/d(Memory Dumpコマンドを入力しましたがルールに合っていませんでした。
開始アドレスと終了アドレスを設定しないでいきなり/dを入力してしまいました。

あらためて8000[ADRSSET]8056[/][d]を入力しました。
一応スクロール表示されましたが最初の3行は1行空けて表示されました。
多分入力ミスのせいだと思いますが…。
確認のため8000[ADRSSET]
8040[/][d]を入力しました。
今度は正しくスクロール表示されました。
念には念を入れて。
もう一度メモリダンプを実行しました。

今度は0000[ADRSSET]
006f[/][d]を入力しました。
正しくスクロール表示されました。
続いてリモートモードでのステップ動作のテストです。

ブレークアドレスを8002にセットしブレーク回数を50回(=32H)に設定しました。
そのあとアドレス8000にセットしr(RUNコマンド)を入力しました。
プログラムが50回(32H)実行されてアドレス8002を実行した後でブレークしました。
Aレジスタは32になっています。
PC(プログラムカウンタ)は次のアドレス(8003)になっています。
ここでn(cont)を入力すると1ステップ動作になります。

nを入力するたびに命令が1ステップだけ実行されます。
次はトレースモードのテストです。

/tの入力でトレースモードにエントリします。
このあと8000[ADRSSET][RUN]の入力でプログラムがトレース実行されます。
17ステップ実行してトレースモードが終りました。

表示がスクロールして最後の表示でコマンド入力待ちになります。
ここでn(CONT)を入力すると1ステップ実行されます。

トレースモードも正しくスクロール表示することが確認できたので[Ctrl][E]を入力してリモート接続を終了しました。
最初に/dコマンドの入力ミスのあと/dの再実行で最初の3行が二重に改行されました。
/dの入力ミスが原因だと思いますが念のため再度テストしてみます。

ZB3DOS3UTE.exeを実行し/dコマンドを実行しました。

今度は正しくスクロール表示されました。
[Ctrl][E]を入力してリモート接続を終了しました。

上記操作のログです(最初に実行した分です)。
logfile nd80zlog\05090824.txt open zb3dos3u 2016.4.9 by Chunichidenko ND80Z3に接続しました 0001 0000 - /d[MEMORY DUMP] 0001 00 08 00 00 00 00 00 C3 BA FF 00 00 00 00 00 C3 .......テコ......テ 8000[ADRSSET] 8000 003E - 8056/d[MEMORY DUMP] 8000 3E 00 3C C3 02 80 00 3E 00 22 80 AC 12 8B 20 43 >.<テ...>.".ャ.. C 8010 FC DF 41 00 45 50 32 00 0A 00 04 00 0A 00 11 84 .゚A.EP2......... 8020 F0 0C 00 9A FA 00 00 98 FA 5A 00 99 FA 02 00 0D .........Z...... 8030 14 14 00 13 81 F0 0C 00 2C D7 28 F0 0C 00 29 2C ........,ラ(...), 8040 D6 28 F0 0C 00 29 0D 16 1E 00 05 85 F0 0C 00 0D ヨ(...).......... 8050 08 49 52 21 27 22 00 61 80 C0 12 89 20 0E C6 07 .IR!'".a.タ.. .ニ. 8000[ADRSSET] 8000 003E - 8040/d[MEMORY DUMP] 8000 3E 00 3C C3 02 80 00 3E 00 22 80 AC 12 8B 20 43 >.<テ...>.".ャ.. C 8010 FC DF 41 00 45 50 32 00 0A 00 04 00 0A 00 11 84 .゚A.EP2......... 8020 F0 0C 00 9A FA 00 00 98 FA 5A 00 99 FA 02 00 0D .........Z...... 8030 14 14 00 13 81 F0 0C 00 2C D7 28 F0 0C 00 29 2C ........,ラ(...), 8040 D6 28 F0 0C 00 29 0D 16 1E 00 05 85 F0 0C 00 0D ヨ(...).......... 0000[ADRSSET] 0000 00C3 - 006f/d[MEMORY DUMP] 0000 C3 00 08 00 00 00 00 00 C3 BA FF 00 00 00 00 00 テ.......テコ...... 0010 C3 BD FF 00 00 00 00 00 C3 C0 FF 00 00 00 00 00 テス......テタ...... 0020 C3 C3 FF 00 00 00 00 00 C3 C6 FF 00 00 00 00 00 テテ......テニ...... 0030 C3 C9 FF 00 00 00 00 00 C3 CC FF 3E FF D3 98 21 テノ......テフ.>.モ.! 0040 EC 83 06 0C AF 77 23 05 C2 45 00 21 C7 83 22 E2 ....ッw#.ツE.!ヌ.". 0050 83 3E FF D3 98 31 D1 83 CD C0 01 CD 16 02 47 E6 .>.モ.1ム.ヘタ.ヘ..G. 0060 10 CA 84 00 78 E6 0F 06 00 87 4F 21 74 00 09 7E .ハ..x.....O!t..~ /r *** REGISTER mode entry *** [ AF ] FFEA 0000 - [RD+] [ BC ] FFE8 0000 - [RD+] [ DE ] FFE6 0000 - [RD+] [ HL ] FFE4 0000 - ra [ brA] FFF0 0000 - 8002[WR+] [ brC] FFF2 0000 - 32[WR+] [ AF ] FFEA 0000 - [RD-] [ brC] FFF2 0032 - [RD-] [ brA] FFF0 8002 - /0 *** REGISTER mode end *** FFF0 8002 - 8000[ADRSSET] 8000 003E - r [RUN] A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 3220 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF07 00100000 00 n [CONT] A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 3220 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF2B 00100000 00 n [CONT] A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 3320 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF72 00100000 00 /t[TRACE SET] FFD1 2010 - trace on 8000[ADRSSET] 8000 003E - r [RUN] A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0020 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF64 00100000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0100 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF04 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0100 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF27 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0200 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF49 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0200 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF7C 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0300 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF03 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0300 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF69 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0400 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF6E 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0400 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF55 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0500 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF2D 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0500 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF4D 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0600 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF0C 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0600 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF38 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0700 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF7C 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0700 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF02 00000000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0808 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF56 00001000 00 A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0808 0000 0000 0000 F800 8002 0000 0000 0000 0000 0000 0000 FF35 00001000 00 n [CONT] A F B C D E H L SP PC IX IY A'F' B'C' D'E' H'L' I R SZ H PNC BRC 0908 0000 0000 0000 F800 8003 0000 0000 0000 0000 0000 0000 FF43 00001000 00 ^E 0000 00C3 - リモート接続を終了しました logfile closed at Sat May 09 08:33:56 2026 |
下は再度テストした分のログです。
logfile nd80zlog\05090834.txt open zb3dos3u 2016.4.9 by Chunichidenko ND80Z3に接続しました 0001 0000 - 8000[ADRSSET] 8000 003E - 8056/d[MEMORY DUMP] 8000 3E 00 3C C3 02 80 00 3E 00 22 80 AC 12 8B 20 43 >.<テ...>.".ャ.. C 8010 FC DF 41 00 45 50 32 00 0A 00 04 00 0A 00 11 84 .゚A.EP2......... 8020 F0 0C 00 9A FA 00 00 98 FA 5A 00 99 FA 02 00 0D .........Z...... 8030 14 14 00 13 81 F0 0C 00 2C D7 28 F0 0C 00 29 2C ........,ラ(...), 8040 D6 28 F0 0C 00 29 0D 16 1E 00 05 85 F0 0C 00 0D ヨ(...).......... 8050 08 49 52 21 27 22 00 61 80 C0 12 89 20 0E C6 07 .IR!'".a.タ.. .ニ. ^E 0000 00C3 - リモート接続を終了しました logfile closed at Sat May 09 08:35:15 2026 |
パソコンをつくろう![第447回]
2026.5.10upload
前へ
次へ
目次へ戻る
ホームページトップへ戻る