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

復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります

[第398回]


●WordStar(3)

3日ぶりの更新になってしまいました。
前回は、WordStarについてはこれ以上追求しているとCP/M互換DOSが出来上がりませんから、とりあえず棚上げにします、と書きましたが…。
どうにも面白くないのですよねえ。
せっかくのCP/M互換DOSなのに、これじゃぁちっとも互換じゃないじゃありませんか。
おそらくハードウェアに依存している部分はあると思います。
しかし、それにしても、もう少しなんとかならないものか。

そんなふうに考えておりますと、どうにも気になって他の作業に身が入りません。
そもそもは、キー入力がうまくいかないあたりに、何か問題がありそうという気がしました。
ま。
とりあえず、ちょっと、そのあたりだけでも調べてみるか、という気持ちでやりはじめたのですけれど、一旦首をつっこんでしまいますと、ええ、もう泥沼であろうとぬかるみでありましょうと、これはもう、行くしかありませぬ。
かくして、またしても土曜日、日曜日をつぶしてWordStar様と格闘することになってしまいました。

しかし。
これはもう何回も書いておりますように、泥沼でもがいて、少しも進展がないように見えておりましても、そこであきらめてはいけません。
あかん、もうだめ。
と思ったときに、もう一歩、もう一度、あきらめずにトライしてみますと、突然霧が晴れて急転直下問題が解決してしまいます。
もうこれは悟りのようなものであります。

ええ。
今回も、おかげさまにて、やっとクリアできました。
キー入力の問題は、オートリピートをなんとかして押さえ込もうと考えておこなったプログラム改造が裏目に出て、それだけではなかったのですが、うまくいかなかったことの原因のひとつになっていました。
オートリピートの問題につきましては[第363回]に書いております。

もうひとつの問題は、お客様から送っていただいたWordStarが特定の機種向けだったのか、あるいはディスクもしくはメモリに対してBIOSを越えた制御をおこなっているのか、よくはわかりませんが、とにかくエラーが発生して先に進めなかったということにもありました。
この件につきましては、多分機種依存の問題と考えております。
幸い、インターネットから別のバージョンをダウンロードすることができましたので、それで試しましたところ、おかしなエラーは発生せず、本来の動作(だと思います)をすることを確認できました。

何はともあれ、実際の画面でお見せすることにいたします。
まずはこちらの、エラーになってしまうバージョンから。
あ。
今回はWindows7でテストをいたしました。

ここまではうまく進みます。
ところが、ここで実際にキー入力をしますと。

エラーになってしまいます。
キーを2つ3つ打ち込んだだけです。

オーバーレイとありますから、メモリかディスク操作で不都合なことがおきているようです。
何がどうなっているのかよくわかりません。
ここで[Esc]を押しますと、初期画面に戻ります。

[X]キーを入力すると、CP/M互換DOSに戻ります。

これでは使い物になりません。

実はインターネットからダウンロードできたWordStarについても試してみました。

画面がくずれているのは画面表示のためのエスケープシーケンスのせいです。
Y”やY!とか3や4がそれです。
おそらくY”、Y!はカーソル制御で、3や4は表示色の制御だと思います。
これを適切に処理すれば、上の画面と同じようにきれいな表示になるはずですが、これはテストなのでこのままにしてあります。

こちらのWordStarもファイルの作成でこけてしまいます。

ごちゃごちゃしてて見難いですが、下から2行目に、
ERROR E40:BAD OVERLAY FILE,…
と表示されています。
さきほどと同じエラーです。

ほかのキー操作はできます。
[Esc]キーでメイン表示に戻って、そこで[X]キーを押してCP/M互換DOSに戻りました。


こちらも上と同じサイトからダウンロードさせていただいたものなのですが。


こちらは上の2つとはバージョンが少し違うようです。


メイン画面は同じようですね。

1行目にちょっとゴミが残っていますね。

今回はちゃんとファイルの作成に入れました。

画面上部のHELPに表示されているように[Ctrl]キーを使っていろいろなキー操作ができます。
実際にそのように操作できることを確認しました。

ここには説明がありませんが、[Ctrl]+[K]のあと[D]キーの入力でファイルセーブができます。

そのあと[X]キーでCP/M互換DOSに戻って、DIRコマンドでファイル(TEST4.TXT)がセーブされていることを確認しました。

TYPEコマンドで内容を表示させてみました。


せっかくここまでできたのですから、もう一度、今度は今作ったファイルを再編集してみましょう。
もう一度WordStarを起動しました。
WordStarの起動は
WS[Enter]
です。
ファイルの作成、編集は
メイン画面で、
D[Enter]
です。

TEST4.TXT[Enter]
と入力しました。

ファイルの内容が表示されましたから、カーソル移動([Ctrl]+[A]や[Ctrl]+[E]など)やそのほかのキー操作を使って、行の追加や文字の変更を行ないました。

おお。
文字の挿入削除だけではなくて、行単位で挿入することもできるのですね。
なかなかに立派なものです。

先程と同じようにして、ファイルを保存してCP/M互換DOSに戻ったあと、TYPEコマンドで内容を表示させてみました。


●WordStarの入手先

上で動作を確認しましたWordStarの入手先です。
こちらのサイト(http://www.retroarchive.org/cpm/text/text.htm)からダウンロードさせていただきました。
上から8行目、WordStar 3.3 for CP/M−80/Kayproの前のリンクをクリックすると圧縮ファイルをダウンロードできます(その何行か下にもWordStar 3.0がありますが、こちらは上に書きましたようにOVERLAY ERRORが発生してしまいます)。

ファイルを解凍して、その中のWS.COMとWSMSGS.OVRとWSOVLY1.OVRをZフォルダにコピーします。
そのあとA〜Dのいずれかの仮想ドライブにコピーします。
上にも書きましたようにWordStarの起動は、
WS[Enter]
です。
最初のWordStarと大きく表示される画面で[Enter]キーを押すとメイン画面が表示されます。
ファイルの編集はD[Enter]またはN[Enter]です。
ファイルの保存終了は[Ctrl]+[K]のあと[D]を入力します。
メイン画面で[X]を入力するとWordStarを終了して、CP/M互換DOSに戻ります。

しかし。
やっぱりエラーが発生してしまいました。

ZB3[Enter]
でZB3BASICに戻るはずのところハングアップしてしまいました。
余談ですが、何らかの原因でハングアップしてしまったときは、ND80ZV(ND80Z3.5)をリセットしてから、[Ctrl]+[C]を入力するとブレークできます。

実はこの原因もつきとめています。

おそらくWordStarがZBIOSの4バイトを破壊してしまうのがその原因です。
E236〜E238にはZB3BASICへのジャンプ命令が書かれています。
そこを破壊してしまうので、ZB3BASICに戻れなくなってしまいます。
うーん。
不本意ではありますが、ジャンプテーブルを移動しておきましょうかねえ。

さて。
紆余曲折がありまして、一度はもろ挫折しかかったWordStarも、これにて一件落着となって、めでたしめでたし、ということだったのでありますが。
毎度のことながら、苦労の多い人生でありまして、このあと、とんでもないトラブルが発生してしまいました。
そのために、本日はおよそ半日をつぶして悪夢の時を過ごすこととなったのでありますが、それにつきましては、また次回にて説明をいたします。

ワンボードマイコンでCP/Mを![第398回]
2013.5.20upload

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