2015.1.6

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

MYCPU80でCP/Mを!
超巨大基板の8080互換HCMOS・CPUでCP/Mを走らせてしまおうという、なんとも狂気なプロジェクトです!


[第95回]


●DM@、CM@のテスト

やっと正月気分から抜け出しまして、いよいよMYCPU80用のZB3DOS(CP/M互換DOS)のCP/M動作の確認テストを開始いたしました。
CP/Mの動作につきましては、すでに[第88回]でMBASICを起動してSTARTREKを実行して、基本的なところでは問題なく動作することを確認しております。
ですから大体のところは問題なく動作するとは思っているのですが、思わぬところにバグが潜んでいるかもしれません。
念のためということでもありますし、これからMYCPU80用としてのZB3DOS(CP/M互換DOS)の操作説明書も書かねばなりません。
大体はND80ZV(ND80Z3.5)用のZB3DOS操作説明書と同じ内容になると思いますが、部分的に違ってくるところもあると思います。
説明書の作成を兼ねて、ND80ZV(ND80Z3.5)用のZB3DOS操作説明書に従って、記載された内容の通りにMYCPU80で動作テストをしていくつもりです。

同説明書では、CP/Mの操作に先立って、ZB3BASICに追加(新規追加および機能追加)されたマシン語モニタコマンドについて説明しています。
DM@、CM@、BP@、RT@、BP@0、JP@、/LD、/SV、/BAT、/CPM、/CPM,Dの各コマンドです。
/LD、/SVは機能追加です。

まずはDM@〜JP@のテストです。
@をつけないコマンドは標準的なマシン語モニタコマンドとしてZB3BASICに搭載されています。
標準的な機能では通常のRAM領域(8000〜FFFF)に対して機能しますが、@をつけるとZB3BASICを選択しているときはシステムROM領域の裏になってアクセスできないRAM領域(0000〜7FFF)に対して働くことができます。
各機能については「ワンボードマイコンでCP/Mを!」[第162回][第186回]で説明をしておりますので、詳しくはそちらをご参照願います。

DM@、CM@からテストを開始しました。

logfile mycpu80log\01061603.txt open
mzbdos3L 2014.12.29 by Chunichidenko

MYCPU80に接続しました(19200bps)
0001 001E - z
1000 00C3 - 
*** mycpu80 zb3basic ****
>dm@0000,00ff
0000  FF B9 2A 86 13 9B FA 57-E6 0E 47 06 DB F8 FA 50  .ケ*....W..G.ロ..P
0010  11 33 01 C9 0A FC B6 41-63 C1 9E 1E 9C 98 64 A6  .3.ノ..カAcチ....dヲ
0020  56 23 AB BF B3 EF D2 FF-9E BD 60 6D E9 23 1B D6  V#ォソウ.メ..ス`m.#.ヨ
0030  18 F5 97 F9 F6 0E 2B 3F-EF F1 7D 3D 23 73 FA 13  ......+?..}=#s..
0040  1D B0 97 D9 C1 D9 45 4E-BF F5 F1 85 73 F1 9E 2D  .ー.ルチルENソ...s..-
0050  4F 73 9E D7 CE B5 DC 2C-17 9C A9 28 6A 63 48 31  Os.ラホオワ,..ゥ(jcH1
0060  C3 EA 01 C3 F0 59 A6 A6-FC 01 1B 7F A9 1B 3E 9F  テ..テ.Yヲヲ...ゥ.>.
0070  3D 2A 7D 65 2F 1B F8 32-28 F9 4C 48 8D E9 31 04  =*}e/..2(.LH..1.
0080  CC 70 83 69 5E 9B 2E 3A-47 4C 9C 9C 72 1F DB 77  フp.i^..:GL..r.ロw
0090  66 86 D7 D0 DF 1D 67 58-C7 C7 EB 82 4C 9A 32 B4  f.ラミ゚.gXヌヌ..L.2エ
00A0  FF 9D 7E F7 69 DF 88 20-79 DA 84 BB C8 B7 5D 13  ..~.i゚. yレ.サネキ].
00B0  FF B8 A9 0E 5E 34 F7 53-6A E4 A7 7C E1 19 F8 A2  .クゥ.^4.Sj.ァ|...「
00C0  5C 49 4E CA 3B 15 0F 9E-1B 48 CF E8 D7 67 8D 4C  \INハ;....Hマ.ラg.L
00D0  FE E5 80 CE 19 E3 E3 22-B5 58 9E B4 CD C8 AF F9  ...ホ..."オX.エヘネッ.
00E0  CD 34 ED 7D 4F 92 0A D3-DC C4 93 33 E2 EE 9D 3B  ヘ4.}O..モワト.3...;
00F0  A7 00 5F 07 88 AE 27 3F-49 CD 40 DC 51 77 48 FC  ァ._..ョ'?Iヘ@ワQwH.
>cm@1000
1000 0C-12
1001 80-34
1002 7A-56
1003 65-78
1004 77-
1003 78-
1002 56-
1001 34-
1000 12-
>dm@1000,100f
1000  12 34 56 78 77 BE 9F A4-B0 39 97 DE F1 77 6E 22  .4Vxwセ.、ー9.゙.wn"
>cm@0100
0100 B8-01
0101 C3-34
0102 81-12
0103 25-11
0104 B0-78
0105 04-56
0106 9B-21
0107 9F-ab
0108 0B-90
0109 CB-03
010A 33-13
010B 94-23
010C F6-
>dm 0100,011f
0100  06 C2 F9 00 C3 51 00 3E-FF D3 98 CD A0 02 67 CD  .ツ..テQ.>.モ.ヘ.gヘ
0110  A0 02 6F CD A0 02 57 CD-A0 02 5F 22 EE FF EB 22  .oヘ.Wヘ._"..."
>dm@0100,011f
0100  01 34 12 11 78 56 21 AB-90 03 13 23 F6 F9 12 9D  .4..xV!ォ...#....
0110  B5 9D F7 87 FB 9D 52 4C-B6 CB 90 3D A3 57 3F 33  オ.....RLカヒ.=」W?3
>bp@0106
>jp@0100


ZB3BASICが機能している状態ではROMが選択されているアドレス1000〜の範囲をDM@コマンドで表示したあと、CM@コマンドで内容を書き換えて、もう一度DM@コマンドでその結果を確認してみました。
DM@、CM@は正しく機能することが確認できました。
次はBP@とJP@コマンドの確認です。
CM@コマンドで0100〜に簡単なマシン語のプログラムを書いたあと、BP@コマンドでアドレス0106にブレークポイントを設定してから、JP@命令を実行しました。

あれ?
ハングアップしてしまいました。
むむ。
新春早々さっそくバグか?

本日は時間がなくなってしまいました。
続きは次回にいたします。

MYCPU80でCP/Mを![第95回]
2015.1.6upload

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