[HOME]  [全部表示 会議室風]  [全部表示 保存用]  [HOME]  [リストへもどる] [リストへもどる]

一括表示


  としきさんのmore.com - konno 23/01/01-00:08 No.10443
 ┣ Re: としきさんのmore.com - としき 23/01/01-02:25 No.10446
 ┃ ┗ Re^2: としきさんのmore.com - konno 23/01/02-00:14 No.10448
 ┃ ┣ Re^3: としきさんのmore.com - 文太 23/01/02-17:55 No.10452
 ┃ ┃ ┗ 各種DOSエミュでの more.com の挙動 - konno 23/01/02-19:11 No.10453
 ┃ ┃ ┣ VTDOS int2Fh - 文太 23/01/03-00:22 No.10454
 ┃ ┃ ┃ ┗ Re: VTDOS int2Fh - konno 23/01/04-21:20 No.10461
 ┃ ┃ ┃ ┗ Re^2: VTDOS int2Fh - 文太 23/01/04-23:12 No.10463
 ┃ ┃ ┃  ┣ Re^3: VTDOS int2Fh - konno 23/01/05-01:06 No.10465
 ┃ ┃ ┃  ┗ あてにならない(DOS ver @VTDOS) - 文太 23/01/07-18:10 No.10471
 ┃ ┃ ┃   ┣ 各社のDOS(割り込みベクタ) - 文太 23/01/08-18:06 No.10473
 ┃ ┃ ┃   ┃┃┣ INT 10h - 文太 23/01/09-23:56 No.10474
 ┃ ┃ ┃   ┃ ┗ Re: 各社のDOS(割り込みベクタ) - konno 23/01/10-01:38 No.10478
 ┃ ┃ ┃   ┃ ┗ VTDOS + PC-DOS J6.3/V - 文太 23/01/11-01:14 No.10482
 ┃ ┃ ┃   ┃ ┃ ┗ Re: VTDOS + PC-DOS J6.3/V - konno 23/01/12-00:25 No.10485
 ┃ ┃ ┃   ┗ ah=30h = command.com - 文太 23/01/13-21:04 No.10487
 ┃ ┃ ┃    ┣ Re: ah=30h = command.com - konno 23/01/15-21:21 No.10488
 ┃ ┃ ┃    ┃ ┗ Re^2: ah=30h = command.com - 文太 23/01/17-01:11 No.10489
 ┃ ┃ ┃    ┃ ┗ DOSVAXJ3は 内蔵DOSで動いているようです - konno 23/01/17-22:56 No.10491
 ┃ ┃ ┃    ┃  ┗ Re: DOSVAXJ3は 内蔵DOSで動いているようです - 文太 23/01/18-02:11 No.10493
 ┃ ┃ ┃    ┃  ┃┃┣ Re^2: DOSVAXJ3は 内蔵DOSで動いているようです - shadow 23/01/18-18:35 No.10496
 ┃ ┃ ┃    ┃  ┃┃┣ Re^3: DOSVAXJ3は 内蔵DOSで動いているようです - 文太 23/01/18-20:18 No.10497
 ┃ ┃ ┃    ┃  ┃┃┗ Re^3: DOSVAXJ3は 内蔵DOSで動いているようです - konno 23/01/18-22:53 No.10498
 ┃ ┃ ┃    ┃  ┃ ┗ Re^2: DOSVAXJ3は 内蔵DOSで動いているようです - konno 23/01/19-00:07 No.10501
 ┃ ┃ ┃    ┃  ┃ ┗ Re^3: DOSVAXJ3は 内蔵DOSで動いているようです - 文太 23/01/19-00:31 No.10505
 ┃ ┃ ┃    ┗ MS-DOS version - 文太 23/01/18-15:47 No.10494
 ┃ ┃ ┃     ┣ 追記 - 文太 23/01/18-15:57 No.10495
 ┃ ┃ ┃     ┃ ┗ Re: 追記 - としき 23/01/18-23:25 No.10499
 ┃ ┃ ┃     ┃ ┣ Re^2: 追記 - 文太 23/01/19-00:14 No.10503
 ┃ ┃ ┃     ┃ ┃ ┗ Re^3: 追記 - としき 23/01/20-00:53 No.10508
 ┃ ┃ ┃     ┃ ┃ ┗ Re^4: 追記 - 文太 23/01/20-01:42 No.10511
 ┃ ┃ ┃     ┃ ┗ シェル? - 文太 23/01/19-14:37 No.10506
 ┃ ┃ ┃     ┃ ┃┃┣ Re: シェル? - としき 23/01/20-00:54 No.10509
 ┃ ┃ ┃     ┃ ┃┃┗ Re^2: シェル? - 文太 23/01/20-01:42 No.10512
 ┃ ┃ ┃     ┃ ┃┃┣ Re: シェル? - としき 23/01/21-21:58 No.10520
 ┃ ┃ ┃     ┃ ┃┃┗ 旧8とDOSソフト - 文太 23/01/25-21:28 No.10527
 ┃ ┃ ┃     ┃ ┃┃ ┗ Re: 旧8とDOSソフト - としき 23/01/25-23:51 No.10528
 ┃ ┃ ┃     ┃ ┃┃  ┗ フィンランド事情 - 文太 23/01/26-15:31 No.10531
 ┃ ┃ ┃     ┃ ┃┃   ┗ Re: フィンランド事情 - としき 23/01/27-22:58 No.10534
 ┃ ┃ ┃     ┃ ┃┃    ┗ Re^2: フィンランド事情 - 文太 23/01/28-01:41 No.10536
 ┃ ┃ ┃     ┃ ┃ ┗ NDOS - 文太 23/01/25-21:22 No.10526
 ┃ ┃ ┃     ┗ PC DOS 7 Update - 文太 23/01/19-00:15 No.10504
 ┃ ┃ ┃      ┗ PC DOS trivia - 文太 23/01/19-14:39 No.10507
 ┃ ┃ ┃       ┣ Re: PC DOS trivia - としき 23/01/20-00:54 No.10510
 ┃ ┃ ┃       ┃ ┗ Re^2: PC DOS trivia - 文太 23/01/20-01:43 No.10513
 ┃ ┃ ┃       ┗ MASM の歴史 - 文太 23/01/27-16:34 No.10532
 ┃ ┃ ┃        ┣ Re: MASM の歴史 - 文太 23/01/27-16:53 No.10533
 ┃ ┃ ┃        ┗ DOS ver & SETVER - 文太 23/01/28-21:53 No.10538
 ┃ ┃ ┃         ┗ get true ver (ax=$3306) - 文太 23/01/29-22:34 No.10540
 ┃ ┃ ┣ Re: 各種DOSエミュでの more.com の挙動 - 文太 23/01/03-01:35 No.10455
 ┃ ┃ ┣ Re: 各種DOSエミュでの more.com の挙動 - としき 23/01/10-00:13 No.10475
 ┃ ┃ ┃ ┗ Re^2: 各種DOSエミュでの more.com の挙動 - konno 23/01/11-00:19 No.10480
 ┃ ┃ ┗ moreの問題の原因は FreeDOSのcommand.com でした - konno 23/01/10-23:49 No.10479
 ┃ ┃  ┗ MSDOS Player+FreeDOSのcommand.com で検証の補足など - konno 23/01/12-01:51 No.10486
 ┃ ┗ Re^3: としきさんのmore.com - としき 23/01/04-01:19 No.10459
 ┃  ┗ MS-DOS Player と more - konno 23/01/06-21:57 No.10469
 ┗ 各環境で ver や としきmore を試してみたら - konno 23/01/28-00:04 No.10535
  ┗ Re: 各環境で ver や としきmore を試してみたら - 文太 23/01/28-01:56 No.10537
   ┗ Re^2: 各環境で ver や としきmore を試してみたら - konno 23/01/29-01:01 No.10539
    ┗ vtdos いつからいつまで? - 文太 23/01/30-03:11 No.10541

(10443) 10443としきさんのmore.com  投稿者:konno   2023/01/01(日) 00:08
   コメント数 2

今、野ざらし言#5226 あたりで、としきさんのmore.com の話題が出ています。
VTDOSでのとしきさんのmore.com の問題は
#6641 2015/08/21 あたりからの話題で
#6648: Re: としきさんのmore.com 投稿者: konno   2015/08/24
ここでMASMでアセンブルしてみたけどVTDOSでは使えなかったのでした。

今回、行数がゼロになっているのでは? という指摘でもう一度挑戦しました。
としきさんのソースの28行目を

GOOD_VER:
;
;MACHINE CHECK
;
MOV BYTE PTR DS:[FLAG98],0
PUSH DS
JMP IBM ;★ ここで機種チェック IBM にジャンプ
XOR AX,AX

このように追加したら、VTDOSで正常に動きました。\(^^)/ ヤッタ-
どこで躓いているのかは他の方に調べてもらいたいと思います。(^^;

# ああ、年が変わってしまった・・・


      - No.10443 -    このTreeへ           [リストへもどる] pre

(10443) 10446Re: としきさんのmore.com  投稿者:としき   2023/01/01(日) 02:25
参照先:http://toshiki.la.coocan.jp/
    10443 番 konno さんへのコメント    コメント数 1

どもども、原作者の としき でございます。
あけましておめでとうございます。
このたびは、わざわざバグ取りしていただきありがとうございます。
いやぁ、こういうことがあるので、ソースは公開しておくものですね。
なので、konnoさんにおかれましてもぜひ、レシピを公開していただくことを希望。

それはさておき。

> このように追加したら、VTDOSで正常に動きました。\(^^)/ ヤッタ-

機種チェック冒頭で全てすっ飛ばしてIBMマシン専用にしてしまうという、ある意味
凶悪なパッチ当てですね。
だけど、これで動くということは、他のマシンと誤認しているということ。
一体、どのマシンと誤認しているのやら。
とはいえ、この機種判別法、20世紀に教えてもらって、その当時の機種とOSでは
問題なく動いていたわけですよ。うぅん、最新の機種判別法、どこかに公開されて
いるとうれしいんだけど。
      - No.10446 -    このTreeへ    コメント元:10443 へ [リストへもどる] soft

(10443) 10448Re^2: としきさんのmore.com  投稿者:konno   2023/01/02(月) 00:14
    10446 番 としき さんへのコメント    コメント数 2

としきさん、 あけましておめでとうございます。

> このたびは、わざわざバグ取りしていただきありがとうございます。

バグ取りではなく、回避しただけです。

> いやぁ、こういうことがあるので、ソースは公開しておくものですね。
> なので、konnoさんにおかれましてもぜひ、レシピを公開していただくことを希望。

それではこんど例の所にこっそり置いときますんで、よしなに。(^^メ;

> 機種チェック冒頭で全てすっ飛ばしてIBMマシン専用にしてしまうという、ある意味
> 凶悪なパッチ当てですね。
> だけど、これで動くということは、他のマシンと誤認しているということ。
> 一体、どのマシンと誤認しているのやら。

マーカーを挿入してみたら、PC98 でこけているみたいですね。

> とはいえ、この機種判別法、20世紀に教えてもらって、その当時の機種とOSでは
> 問題なく動いていたわけですよ。うぅん、最新の機種判別法、どこかに公開されて
> いるとうれしいんだけど。

#6648:Re: としきさんのmore.com  投稿者:konno   2015/08/24
この記事で

> ここの過去ログを検索すると

> > #04638/04628 xxxxxxxx としき Re: VTDOS 1.11とページャー
> > PC-98と誤判別されてしまっている

> ということがあったので、機種の自動判定部分で誤判定されている
> かもしれないと思いました。

こう書いていました。
2009年の #4640 の10#さんの記事を引用すると

----------------------------------------------
としきさんのMOREの判定ルーチンですが、IntDCベクタとIntDDベクタが同一で
無ければNECと判別しているようなので、以下のパッチで対応出来ると思います。

symdeb <patch.sdb >nul

[PATCH.SDB]
------------------
e 0:370
80 03 ff ff 80 03
q
------------------

VTDOSは割り込み種別の判別方法の都合上IntDCベクタとIntDDベクタは
別のアドレスを示す仕様になっています。
----------------------------------------------

これでVTDOSが対応してくれたと思ったのですが、変わったのかしら?

VTDOS対応版は、IBMチェックを最初に持ってくれば良さそうです。
試作版はうまく動いているようです。
あとは98エミュで問題ないかのチェックですね。

      - No.10448 -    このTreeへ    コメント元:10446 へ [リストへもどる] soft

(10443) 10452Re^3: としきさんのmore.com  投稿者:文太   2023/01/02(月) 17:55
    10448 番 konno さんへのコメント    コメント数 1


 あまり(というかまったく)探求したわけでもないのですが。
 全体に、おぼろげながら、これまでの経緯については理解しました。
 VTOOSにおいて、

>VTDOSは割り込み種別の判別方法の都合上IntDCベクタとIntDDベクタは
>別のアドレスを示す仕様になっています。

 ということであったと。古い話であったと。

 パッチを当てれば良いとのことなのですが(*)、機種判別で、自分がVTDOSに
いる、ということが分かる方法ってないんですかね。
 そうしないと、今回のように、VTDOSだから? よく分からないけど?
そうなのかなぁ? とまたなりそうだな、と。あるいは、相当回数の他機種
との比較実験が必要になる???
 皆さまの主たる環境って、VTDOSですよね?

 ま、としきmoreに関してだけいえば、僕はNEC98もFMRも(DOS2も)持って
いないから、前半部分をごっそり切ってしまえば、それで良いのですが。

 ねこプロジェクト方面? VTDOSとどういう関係なのか、よく分かっていません。

(*)パッチしたバイナリをソーサーにかければ、何をどう変更したのか
分かるのかな?

      - No.10452 -    このTreeへ    コメント元:10448 へ [リストへもどる] soft

(10443) 10453各種DOSエミュでの more.com の挙動  投稿者:konno   2023/01/02(月) 19:11
    10452 番 文太 さんへのコメント    コメント数 4

>  パッチを当てれば良いとのことなのですが(*)、機種判別で、自分がVTDOSに
> いる、ということが分かる方法ってないんですかね。

VTDOS は専用ファンクションコールが有るので分かるのですが

>  そうしないと、今回のように、VTDOSだから? よく分からないけど?
> そうなのかなぁ? とまたなりそうだな、と。あるいは、相当回数の他機種
> との比較実験が必要になる???

他のエミュでは難しいと思われます。
主なdosエミュレータで検証したところ、新たな問題が発覚しました。
検証で気づいた点を揚げてみます。

DIR | more とした時の挙動


VTDOS
としきさんの more.com は PC98チェックがうまく出来ない、IBMチェックを先で対応できる。
NECDOS6.2の more.com は、VTDOSのVTXET に対応しているようだ。


MSDOS Player
どの more でも行数が 25行に固定されてしまう。ローメモリの値が固定?
入力待ちで[Ctrl]+C が効かない、途中で中断できない。[Ctrl]+[Break] も効かない。

break ON としても [Ctrl]+C が効かない。この時 [Ctrl]+[Break] を押すと
command.com あたりのメモリ内容などをダーッと表示して止まる?


DOSVAXJ3
どの more でも改行が2重になる。そのため行間が空き画面を溢れてしまう。
としきmore の改行処理をジャンプしたら正常表示出来た。


NP2
NECDOS6.2の more.com は、30行BIOS に対応していない。30行でも15行でも25行固定。
としきmore の改行処理ジャンプ版では、NP2 だけが異常表示になる。他のエミュでは正常。
これはオプション追加で対応だな。


こうしてみると、としきmore(改)が最強のような。


# としきモア最強伝説の始まりか
  虹の〜地平を〜歩み出て〜♪ (それはトワエ・・)


# 闇金のジャンプはあとが怖いぜ!

      - No.10453 -    このTreeへ    コメント元:10452 へ [リストへもどる] soft

(10443) 10454VTDOS int2Fh  投稿者:文太   2023/01/03(火) 00:22
    10453 番 konno さんへのコメント    コメント数 1

konnoさん

 お疲れ様です。

>VTDOS は専用ファンクションコールが有るので分かるのですが

 どのエミュでも効く more.com。電気羊みたい……。
 何が欲しくて、何が必要で、何を書くか、ですね。
 勉強になっています。m(__)m
 最短一致は、うまくいかないのですが。


=== Macrotmp by B ===;
#if0

from vtdossdk.txt

■VTDOS拡張16bitAPI

VTDOSで動作する16bitプロセスはInt 2fh/AX=7476hを利用することにより、
VTDOS拡張ファンクションを呼び出すことが可能です。
VTDOSでは将来に渡りInt 2fh/AX=7476hは予約されます。

Int 2F/AX=7476h/BX=0000h
VTDOSインストレーションチェック

AX = 7476h
BX = 0000h
CX = 6F64h
DX = 0073h

Return:
AX = 0000h
BX = 5456h
CX = 4F44h
DX = 0053h

#endif

* M
50 ^^ "Macrotmp"

AX = $7476,
BX = $0000,
CX = $6F64,
DX = $0073,
&i($2f)

&m("AX: %04xh, BX: %04xh, CX: %04xh, DX: %04xh",AX,BX,CX,DX)

*

 4つ見ることはないだろうと思います。BXだけで十分だと思いますでしょうか?

      - No.10454 -    このTreeへ    コメント元:10453 へ [リストへもどる] soft

(10443) 10461Re: VTDOS int2Fh  投稿者:konno   2023/01/04(水) 21:20
    10454 番 文太 さんへのコメント    コメント数 1

>  どのエミュでも効く more.com。電気羊みたい……。

またまた難しい例えを・・・
電気羊というと、あの小説かな。映画化されたやつ?
奥様に「電気羊」と聞いてみると即座に「ブレードランナー」ね、と。
・・・ハッ!私が人間でないとば・・・バカな想像をしたりして。(^^;;

> === Macrotmp by B ===;

VTDOSチェックマクロですか。

>  4つ見ることはないだろうと思います。BXだけで十分だと思いますでしょうか?

BXだけだと偶然その値になる可能性も有りうるかと思います。
同じAX=7476h を他のアプリで使われる可能性は考えるべきでしょう。
なので、最低

> AX = 0000h
> BX = 5456h

この2つの返り血もとい返り値は見た方がいいかと思います。

      - No.10461 -    このTreeへ    コメント元:10454 へ [リストへもどる] soft

(10443) 10463Re^2: VTDOS int2Fh  投稿者:文太   2023/01/04(水) 23:12
    10461 番 konno さんへのコメント    コメント数 2


>>  どのエミュでも効く more.com。電気羊みたい……。"
>またまた難しい例えを・・・
 こっち界隈では通じるかと……。僕は、そっちも強くないですが。

>奥様に「電気羊」と聞いてみると即座に「ブレードランナー」ね、と。
 奥様もそっち系? 奥様のほうが強いとは!? もと職場の同僚です、とか。
 パチンコも好きな元プログラマです、あるいは、SF作家です、とか。

 あ、たんに「夢をみるか」にかけただけです。

>・・・ハッ!私が人間でないとば・・・バカな想像をしたりして。(^^;;
 いえ、人間をこえていると思う。あれだけの情報で、とりあえず、
「どのエミュでも効く more.com」を実現したもの。

>> === Macrotmp by B ===;
>VTDOSチェックマクロですか。

 いえ、マクロではなく、これらの情報をアセンブラで使えばいいんですね、
その際、返ってきたレジスタを4つも確認しなくても、ということです。

 ですから、

>同じAX=7476h を他のアプリで使われる可能性は考えるべきでしょう。
 あのシステムコールの返り値としてですよ。

 自分が今、VTDOS or DOSVAXJ3 or MSDOS Player or NP2にいる、ってのが
確認できる方法があるべきでしょう、あるといいな、と発想していたんです。
 ないんでしょうか? あったら、| more - の「-」は不要になりますね、と
言いたかったのです。

 たぶん、いいじゃん、できたんだから、だと思うけど。

 でも、
>poke3は12行?
>200LXなど8行の場合があるかも
 とか、おおおお、と思いましたよ。


 しかし、としきさんの経緯をきいて、機種判定って、そんなに大変なんだ、
下手すると、NECを、あるいはFMRを(どっちか忘れた)落とします、です
ものね。そいつにとってユニークな場所を探さなければならない、しかしそこを
探っても、別の機種が落ちては困る、、、。うん、大変。


 どうも話が行き違っているようなので、いちおう確認すると(VWXのinstallation
checkと同じだと思ってますが)、

 Int 2F/AX=7476h/BX=0000h
VTDOSインストレーションチェック

AX = 7476h
BX = 0000h
CX = 6F64h
DX = 0073h

 を、たとえばDOSVAXJ3環境で、発行しても、

Return:
AX = 0000h
BX = 5456h
CX = 4F44h
DX = 0053h

 BXに5456hが返らないだけで、落ちませんよね。Int 2F自体は、DOSが用意する
ものですよね? DOSエミュレータのすべてに、これがあるとは限らないのか???
(注)

 これと機種判定が違うレベルなのは分かっているつもりです。
 でも似た話でもありますね。下手すれば落ちるのだろう。

(注)どうでもいい独り言です。DOSエミュレータを作る人たち、まさか、
割り込みベクターテーブル、自分で書いてませんよね。MSが発表した、何かに入ってる、
ってどっかで、10#さんが言ってたと思うんだけど。
 しかし、そのDOSヴァージョンは? DOS6 と DOS8 (for WinME)では、違うはず


      - No.10463 -    このTreeへ    コメント元:10461 へ [リストへもどる] soft

(10443) 10465Re^3: VTDOS int2Fh  投稿者:konno   2023/01/05(木) 01:06
    10463 番 文太 さんへのコメント

他はよくわからないのでここだけ

>  あ、たんに「夢をみるか」にかけただけです。

なるほどそうでしたか、納得しました。

>  いえ、マクロではなく、これらの情報をアセンブラで使えばいいんですね、
> その際、返ってきたレジスタを4つも確認しなくても、ということです。

これは通じているつもりですが

> >同じAX=7476h を他のアプリで使われる可能性は考えるべきでしょう。
>  あのシステムコールの返り値としてですよ。

もしやと思って、そのマクロで確認してみました。

VTDOS
AX: 0000h, BX: 5456h, CX: 4F44h, DX: 0053h

DOSVAXJ3
AX: 7476h, BX: 0000h, CX: 6F64h, DX: 0073h

MSDOS Player
AX: 0001h, BX: 0000h, CX: 6F64h, DX: 0073h

NP2
AX: 7476h, BX: 0000h, CX: 6F64h, DX: 0073h

こうしてみると、MSDOS player はAXの返り値がありますね。
0001 とか、こっそりVTDOSとの違いを仕込んでいるのかも。(^^;

>  自分が今、VTDOS or DOSVAXJ3 or MSDOS Player or NP2にいる、ってのが
> 確認できる方法があるべきでしょう、あるといいな、と発想していたんです。
>  ないんでしょうか? あったら、| more - の「-」は不要になりますね、と
> 言いたかったのです。

それぞれ環境が違うので、実用的には環境変数を使えば出来ますね。
NOCR = 1
とか仕込んで、more に環境変数を読む機能を付ければ。
やらないですけどね。(^^;

      - No.10465 -    このTreeへ    コメント元:10463 へ [リストへもどる] soft

(10443) 10471あてにならない(DOS ver @VTDOS)  投稿者:文太   2023/01/07(土) 18:10
    10463 番 文太 さんへのコメント    コメント数 2

 ところで、VTDOSがエミュレートしてるDOSのヴァージョンって何? という
疑問がありまして(docのどっかに書いてある?)、あ、下ので調べれば
いいんじゃないか、と思いついたのですが、本当でしょうか?

 ファンクションコールしてるということは、command.comを通りこしてますよね。
 ベクターテーブルを最初(DOS起動時)につくるのはmsdos.sysの仕事なんだから、
(ここをVTDOSはエミュってる)以下でいいか、と思ったのですが、v6.20って
言われると、少なくとも僕が使っているcommand.comと同じヴァージョンで、
ウソっぽくないか、この答え、とか思ってしまいます。

 もっとも、VTDOSって、command.comのヴァージョンにけっこううるさくて、
MS-DOSかPC-DOS (他にもあったみたいだけど)の、この辺りでないとうまくない、という
記憶もあります。

 分かんない、ですかね。
 ま、v6.20 なんだと思ってていいか、、、。
 深い意味はありません。なんとなく疑問が沸いた、というだけです。

--------D-2130-------------------------------
INT 21 - DOS 2+ - GET DOS VERSION ★
AH = 30h
Return: AL = major version number (00h if DOS 1.x)
AH = minor version number


=== Macrotmp by B ===; GET DOS VERSION
* M
50 ^^ "Macrotmp"

ax=$3000, &i($21)
&m("MS-DOS v%d.%d",ax&$FF,ax>>8&$FF)

*

 とはいえですよ、もし、VTDOSがエミュってつくるベクターテーブルとcommnad.com
が違うヴァージョンだったら、なんか動きそうもないですね。同じでなければダメ、
って、普通な感じもする。


      - No.10471 -    このTreeへ    コメント元:10463 へ [リストへもどる] pre

(10443) 10473各社のDOS(割り込みベクタ)  投稿者:文太   2023/01/08(日) 18:06
    10471 番 文太 さんへのコメント    コメント数 2


 システムコールというものについての、雑駁なイメージを抱こうとして
もがいています。以下で終了ですが。


=== test by B ===;
* M
50 ^^ "test"

;AX = $7476, ;これらは、正しい数字
;BX = $0000, ;#10454「VTDOS int2Fh」のまま
;CX = $6F64,
;DX = $0073,

AX = $7477, ;76 -> 77 変更。わざと間違えてみる
BX = $0000,
CX = $6F64,
DX = $0073,
&i($2f)

&m("AX: %04xh, BX: %04xh, CX: %04xh, DX: %04xh",AX,BX,CX,DX)

*

VTDOS
AX: 7477 BX: 0000 CX: 6F64 DX: 0073 ;(1)

MS-DOS 6.20
AX: 7477 BX: 0000 CX: 6F64 DX: 0073

MS-DOS 8 (WinME)
AX: 7477 BX: 0000 CX: 6F64 DX: 0073

(1) 数字はそのまま無変更で返るが、返り値に意味はない。「無効な数字を
入れても知らんよ」というところでしょう。
 しかし、【システムが落ちることはない。】
 これが知りたかったのです。

 まともなシステムコールではまず落ちないのだろう。しかし、ROMをみたりすれば、
場合によってはシステムコールでも、落ちるのだろう。こっちのシステムコールは
どこまでDOSが管理してるのか分からない。というか、DOSの内部も、NEC,
IBM, FMRで違いますね。OEMで提供され、各社、それぞれのマシンにあわせてDOS
作ってね、とMSは言っていたはずなので。
 Win95あたりでも、NECはまだこれをやってましたね。NECが我侭だったという
より、過去の継承という意味で仕方なかったんだろうな、と思うようになりました
けれど。

#10459
>PC-98判定にROMを見ているがある種のハードを使っていると、その判定は失敗すると
>指摘をいただく。
>また、Int10Hを使う方法でPC-98とAT機を判定することが可能だが、これをFM-Rで使うと
>ハングアップする可能性あり。なので、まずFM-Rの判定を行ってからInt10Hを使うこと
>を推奨。

 ここから引っかかり始めました。



 installation check によく使われる「INT 2F」の総論は以下。
 後半、えーと、となるけど。

INT 2F - Multiplex - NOTES
AH = identifier of program which is to handle the interrupt
00h-3Fh reserved for IBM (for DOS)
40h-7Fh reserved for Microsoft (for DOS)
80h-B7h reserved for IBM
B8h-BFh reserved for networks
C0h-FFh reserved for applications
AL is the function code
This is a general mechanism for verifying the presence of a TSR and
communicating with it. When searching for a free identifier code for AH
using the installation check (AL=00h), the calling program should set
BX/CX/DX to 0000h and must not depend on any registers other than CS:IP
and SS:SP to be valid on return, since numerous programs now use additional
registers on input and/or output for the installation check.



> ● VWXの存在確認及びAPI ENTRYの取得
>  INT 2FH - VZ Editor の友 (VWX.COM) - INSTALLATION CHECK
>  AX = E900h
>      BX = 5657h('VW')
>      CX = 0000h

 ここでもね。

      - No.10473 -    このTreeへ    コメント元:10471 へ [リストへもどる] pre

(10443) 10474INT 10h  投稿者:文太   2023/01/09(月) 23:56
    10473 番 文太 さんへのコメント

 全体が見えていませんが、それでも、INT 10h って、ビデオ系だったよな、
という記憶はあり、DOS/Vになったとき、いっぱい活躍してるみたいだな、とか
思った記憶があります。

http://hp.vector.co.jp/authors/VA003720/lpproj/int10h/prologue.htm

--------V-100070-----------------------------
INT 10 - VIDEO - Everex Micro Enhancer EGA/Viewpoint VGA - EXTENDED MODE SET
AX = 0070h
BL = mode (see #00011)
Desc: specify a proprietary display mode on the Everex Micro Enhancer or
Viewpoint video adapters
SeeAlso: AH=00h,AX=6F05h,AX=7000h/BX=0004h,AH=FFh"GO32"!!!!!

 そうじゃない場合もあるようですが、--- CPUが発するINT 10h とか(緊急事態
でしょう)--- もあるようですが、基本、ビデオ系です。

 ただ、BIOSコールとDOSコールの違いが分かっていません。video chip/boardごと
に、色々あるんでしょうか? 「BIOSを叩く」って?

 勘:DOSがけっきょく覆っている。システムコールって、BIOSコールだろうが
DOSコールだろうが、形式が決まってるんだ、、、とか。

 ま、上の引用をみても、いっぱい錯綜してそう、という感触はあります。

http://hp.vector.co.jp/authors/VA003720/lpproj/int10h/tables.htm#bios

 とかよーく見ると、例のあの謎な数字の意味が分かる場合もあるのかも。
 ダメかな?
 ほとんど、Undocumented DOSの"Data Structure"みたいに見えます。

 1983年ぐらいのノートン先生の、VIDEO基礎解説を、2月以内ぐらいに読みたいと
思います。これから、修羅場。
 表示ってねぇ、何をやってるの?


      - No.10474 -    このTreeへ    コメント元:10473 へ [リストへもどる] pre

(10443) 10478Re: 各社のDOS(割り込みベクタ)  投稿者:konno   2023/01/10(火) 01:38
    10473 番 文太 さんへのコメント    コメント数 1

>  システムコールというものについての、雑駁なイメージを抱こうとして
> もがいています。以下で終了ですが。

なるほど、文太さんの疑問はそこでしたか。

> (1) 数字はそのまま無変更で返るが、返り値に意味はない。「無効な数字を
>  しかし、【システムが落ちることはない。】
>  これが知りたかったのです。

これは DOS2.0 から変わらないルール、仕組があって互換性を保ちながら拡張してきていると認識しています。

> (1) 数字はそのまま無変更で返るが、返り値に意味はない。「無効な数字を
> 入れても知らんよ」というところでしょう。

AX がそのまま返る場合はその番号が使われていないということになります。
何かで使われている場合は AX が変わります。その場合下手な数字を入れると暴走して落ちる場合もあるので

>  まともなシステムコールではまず落ちないのだろう。

これは間違いです。インストチェックで BX をゼロにしているのはそれを防ぐためかと想像します。

> >PC-98判定にROMを見ているがある種のハードを使っていると、その判定は失敗すると
> >指摘をいただく。

PC-98やAT機やFM-R など、機種によってROMの内容が違いますが、偶然チェック部分が同じ場合があるということです。

> >また、Int10Hを使う方法でPC-98とAT機を判定することが可能だが、これをFM-Rで使うと
> >ハングアップする可能性あり。なので、まずFM-Rの判定を行ってからInt10Hを使うことを推奨。

Int10h はBIOSコールですね。これは機種ごとに全く違う機能を割り当てられています。
間違って呼べば暴走します。なので、正しい機種の判定法を調べなければいけないわけです。

>  installation check によく使われる「INT 2F」の総論は以下。

なるほど、INT 2F にもこんなルールがあったんですね。参考になりました。

> >  INT 2FH - VZ Editor の友 (VWX.COM) - INSTALLATION CHECK
> >  AX = E900h
> >      BX = 5657h('VW')
> >      CX = 0000h

うーむ、予想は外れたか、BXとCX どちらかがゼロなら問題ないとかかな。


前回のまとレス

>  ところで、VTDOSがエミュレートしてるDOSのヴァージョンって何? という
> 疑問がありまして(docのどっかに書いてある?)、あ、下ので調べれば

vtdos.txt には
DOSエミュレーションはMS-DOS 6.3を参考に実装していますが、
開発目的上不要であったり、Win32コンソール上で動作する上で無意味であったり、
不可能である機能は省略しています。
一部DOS 7.0のAPIもサポートしています。
システムコールは最終的にVTDOSスーパーバイザー命令(NTVDMでいうところのBOP)
が発行され多くは32bitコードでWin32APIコールに変換されます。

こう書いてあります。

>  とはいえですよ、もし、VTDOSがエミュってつくるベクターテーブルとcommnad.com
> が違うヴァージョンだったら、なんか動きそうもないですね。同じでなければダメ、
> って、普通な感じもする。

基本的な互換性はあるのでだいたい動くと思いますよ。
ただ細かな違いがあるので、動作確認は大変ですよね。MSDOS Player は幅広い対応で凄いですね。

MSDOS Player といえば、more-k で、"Q" で中断出来るようになりました。行番号はムズイ。(^^;

      - No.10478 -    このTreeへ    コメント元:10473 へ [リストへもどる] pre

(10443) 10482VTDOS + PC-DOS J6.3/V  投稿者:文太   2023/01/11(水) 01:14
    10478 番 konno さんへのコメント    コメント数 1

konnoさん

 いろいろと丁寧にお教えくださり、ありがとうございます。
 以下の点だけで、失礼いたします。
 おいおい、な感じですが、VTDOS最新版(最終版?)をDLしました。

>>  ところで、VTDOSがエミュレートしてるDOSのヴァージョンって何? という
>> 疑問がありまして(docのどっかに書いてある?)、あ、下ので調べれば

>vtdos.txt には
>DOSエミュレーションはMS-DOS 6.3(※)を参考に実装していますが、
>開発目的上不要であったり、Win32コンソール上で動作する上で無意味であったり、
>不可能である機能は省略しています。
>とあります。

 えっ? MS-DOS 6.3ってあった? MS-DOS 6.22 (英語版)が最終版じゃなかった
っけ? と思ったのが、昨日、一昨日?

vtdos.txt 36,343 2017-09-05 18:08 より
-----------------------------------------------------------------------
■シェル

VTDOSはシェルの指定が無い場合内蔵シェル(VTDCMD)を起動します。
これはコマンドラインをCMD.EXEに渡すだけの簡易的なものなので
お手持ちのMS-DOSやPC-DOSのCOMMAND.COMを利用されることを強くお勧めします。
ただし、一部のCOMMAND.COMしか動作確認を行っていません。
以下のバージョンが確認済みです。
作者はPC-DOS 6.3を使用しています。

MS-DOS E5.0 起動BATの指定が無理っぽい
MS-DOS E6.0 動作確認済み
MS-DOS E6.21 動作確認済み
MS-DOS E6.22 実行不可
MS-DOS J6.2/V 日本語メッセージ表示にbiling.sysが必要

PC-DOS J6.3/V 動作確認済み 推奨バージョン

PC-DOS J6.3B/V 環境変数の参照に問題があるとの報告を頂いてます
PC-DOS J7.0(PC-DOS2000) 動作確認済み
PC-DOS 7.0(IBMDFT) VZの常駐起動が不可
-----------------------------------------------------------------------

 PC-DOS J7.0, PC-DOS 7.0とか、あったんだ!
 でも、これを見ると、10#さんが上で言っているのは(※)、PC-DOS J6.3/Vのこと
でしょう。いちおう、今のところ、僕的には MS-DOS J6.2/V でいいなと思っています。
command.comのメッセージに、別に日本語要らないだろうとも思うので、どっかで、
MS-DOS E6.21とかにしてみるかも、ですが。

-----------------------------------------------------------------------

 FreeDosのcommand.com+MSDOS Player の調査報告など、ありがとうございます。
 うーん、MSDOS Playerとか入れて実験する? とか思っていたので、いえ、それは
手を広げすぎだよ、と平常心を取り戻すことができました。純なMS-DOS 6.2 で、やれる
ことをやりなさい、と自らに言い聞かせてます。

 その他迷子の文太の爆走する空想実験に、優しく回答いただき、感謝しています。
 お礼はお礼ですが、そっち方面にちゃんとしたレスというか、少しは自分でも努力
しました的返信は、少々先になりそうです。BX=0000, で安全策?

 >dir /p が効かない、から、かなり昔のkonnoさんの more.comとの格闘まで、
話が広がりましたね。ここまで深いのか。TCP/IP over .... そのFD、どこ?
そんなこと、できるの? 完全浦島になりました。

 konnoさんの本当に豆な(几帳面な)側面を垣間見させていただきました。多謝。

 明日も寒いけど、晴れで、そして僕らは元気です!


      - No.10482 -    このTreeへ    コメント元:10478 へ [リストへもどる] pre

(10443) 10485Re: VTDOS + PC-DOS J6.3/V  投稿者:konno   2023/01/12(木) 00:25
    10482 番 文太 さんへのコメント

>  えっ? MS-DOS 6.3ってあった? MS-DOS 6.22 (英語版)が最終版じゃなかった
> っけ? と思ったのが、昨日、一昨日?

げげ、私も気が付きませんでした。(^^;
無意識に脳内でPCDOS6.3に変換していたのかもしれませんね。
私は間違いが多いので人のことは言えません。(^^;;

      - No.10485 -    このTreeへ    コメント元:10482 へ [リストへもどる] soft

(10443) 10487ah=30h = command.com  投稿者:文太   2023/01/13(金) 21:04
    10471 番 文太 さんへのコメント    コメント数 2

 意味不明タイトル。
 意味は、

ax=$3000, &i($21)
&m("MS-DOS v%d.%d",ax&$FF,ax>>8&$FF)

 のDOSヴァージョンの取得は、command.comのヴァージョンを返す、
ということ。

 職場からの帰り、車の中でふと思いついた。PC-DOS 7.00 なんて明らかに
ver number の違うcommand.comをvtdosに入れてみて、例のファンクコールを
すれば、この間の話がどれくらいあてになるのか、あるいはならないか、
分かるな、と。

command.com 63,402 1998-05-25 07:00

 上は、PC-DOS 7.00 の command.com。拾ってくるの簡単。ま、ま、いいで
しょう。

 こいつでvtdosを立ち上げて上のマクロを実行したら、あれれ、しっかり

MS-DOS 7.0
 とか返ってきてしまった。もちろん、"MS" in MS-DOSはマクロのもの。

 ふーん、そういうものなんだ。 DOS/VTDOS起動時点で、もう連絡取り合ってる
ですかね? あるいは上のファンクコールの時点でcommand.comのver checkに
行くのか? これは永遠の謎でしょう。

 とにかく気が済みました。さくっ。作戦は、失敗、ちゃんちゃん。
 vtdos.txtのとおり、PC-DOS 6.3程度なのでしょう。


      - No.10487 -    このTreeへ    コメント元:10471 へ [リストへもどる] pre

(10443) 10488Re: ah=30h = command.com  投稿者:konno   2023/01/15(日) 21:21
    10487 番 文太 さんへのコメント    コメント数 1

>  ふーん、そういうものなんだ。 DOS/VTDOS起動時点で、もう連絡取り合ってる
> ですかね? あるいは上のファンクコールの時点でcommand.comのver checkに
> 行くのか? これは永遠の謎でしょう。

これは気になりますね。
各種エミュでどのような挙動なのか、Verコマンドと比べてみました。


VTDOS + MSDOS6.2
ver Microsoft Windows [Version 10.0.19044.2486]
Fコール MS-DOS v6.20

このように、VTDOS の ver は、windows のバージョンを返します。
ファンクションコールは、読み込んでいる command.com のバージョンを返します。


MSDOS Player + MSDOS6.2
ver MS-DOS Version 6.20
Fコール MS-DOS v6.20
MS-DOS v6.20

MSDOS Player + FreeCom
ver FreeCom version 0.82 pl 3 [Mar 13 2013 16:40:42]
Fコール MS-DOS v7.0

このように、MSDOS Player の ver は、読み込んでいる command.com のバージョンを返します。
ファンクションコールも、読み込んでいる command.com のバージョンを返します。


DOSVAXJ3 + FreeCom
ver DOSBox version JP220408. Reported DOS version 7.10.
ファンクションコール MS-DOS v7.10

おや? FreeCom のバージョンは、7.0 のはずが、7.10 になっていますね。
DOSVAXJ3 の場合は、dosboxj.conf の記述の
# ver: Set DOS version. The default value is 7.10.
ver = 7.10
ここで記述したバージョンが反映されているみたいです。
ここをコメントにすると、7.10 になります。
なので、読み込んでいる command.com のバージョンがわからないです。
うーん、いいのだろうか?

      - No.10488 -    このTreeへ    コメント元:10487 へ [リストへもどる] pre

(10443) 10489Re^2: ah=30h = command.com  投稿者:文太   2023/01/17(火) 01:11
    10488 番 konno さんへのコメント    コメント数 1

 ぜんぜん分からないのですが、可能なら、確認させてください。
 FreeComのDOSを単体で起動させたら(DOS機が必要なんでしょうね。
それ用のFDかHDが)、verはいくつなのでしょう? v7.0と返すのが
正しい?

>DOSVAXJ3 + FreeCom
>ver DOSBox version JP220408. Reported DOS version 7.10.
>ファンクションコール MS-DOS v7.10
>おや? FreeCom のバージョンは、7.0 のはずが、7.10 になっていますね。

 7.0なんですよね? 本当は?


>DOSVAXJ3 の場合は、dosboxj.conf の記述の
># ver: Set DOS version. The default value is 7.10.
>ver = 7.10
>ここで記述したバージョンが反映されているみたいです。
>ここをコメントにすると、7.10 になります。

 いちばん分からなかったのは、この箇所です。

>ここをコメントにすると、

>ここをコメントにしても、

 が正しい言い方ですよね。「dosboxj.conf の記述」とは関係なく、
とkonnoさんは、結局言いたいのかな? と。

 エミュは大変だぁ〜〜〜。


 少なくともVTDOSが、command.comのヴァージョンを返すメカニズムというか
意味は、その後分かりました。仮説・空想ですけれど。上のエミュの挙動とは、
いちおう矛盾しないかな。

 DOSVAXJ3は、変だな。何してる? 僕の興味の外ですけれど。


      - No.10489 -    このTreeへ    コメント元:10488 へ [リストへもどる] pre

(10443) 10491DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:konno   2023/01/17(火) 22:56
    10489 番 文太 さんへのコメント    コメント数 1

>  FreeComのDOSを単体で起動させたら(DOS機が必要なんでしょうね。
> それ用のFDかHDが)、verはいくつなのでしょう? v7.0と返すのが
> 正しい?

これはv7.0で正しいと思います。#10488 で書いていますが

> ver FreeCom version 0.82 pl 3 [Mar 13 2013 16:40:42]
> Fコール MS-DOS v7.0

DOS7.0 と表示されるので、DOS7.0 相当ということではないでしょうか。

> >ここをコメントにすると、
> ↓
> >ここをコメントにしても、
>  が正しい言い方ですよね。「dosboxj.conf の記述」とは関係なく、
> とkonnoさんは、結局言いたいのかな? と。

これは途中を省略したらわかりにくくなってしまったようです。

> >ここをコメントにすると、7.10 になります。

ここをコメントにすると、デフォルトで7.10 になります。
            ^^^^^^^^^^^^
これでどうでしょう。

そんなことよりも私は大きな勘違いに気が付きました。
どうやら DOSVAXJ3 は、普通に起動すると内蔵DOS(command.com)が動いているようです。
外部の command.com を使うには、DISKイメージにDOS環境を作ってブートさせるようです。
これは面倒なので実際はどうなのか確認できていません。(^^;

      - No.10491 -    このTreeへ    コメント元:10489 へ [リストへもどる] pre

(10443) 10493Re: DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:文太   2023/01/18(水) 02:11
    10491 番 konno さんへのコメント    コメント数 2

konnoさん

 すいません、まったく話がかみ合っていないようです。

  DOSVAXJ3環境でのFreeCom, command.com(7.0)が、そのFコールが、DOS7.0と
返すことってあるのですか?
 あるとすると、それはどんな条件で? そのときの dosboxj.conf の記述は?

>DOSVAXJ3 は、普通に起動すると内蔵DOS(command.com = 7.10, bunta added)
>が動いているようです。
 すいません、混乱の泥沼です。

 DOSVAXJ3 で、普通に起動させず、dosboxj.confに記述のcommand.comで起動
させると(以下の3通り)、

ms-dos, command.com 6.2,
pc-dos, command.com 7.0,
FreeCom, command.com 7.0

 Fコールの返り値はどうなるのでしょう?

 深い関心があるわけではありません。
 すごく変だなぁ、いちばん変なのは僕の頭なのかなぁ? と。

 自分でやってみろ!? いえ、すいません、僕はエミュにそこまでの関心はないん
です。
 僕の結論としては、DOSVAXJ3はけっこう特殊らしい、で、まあ、十分なのです。
 ごめんなさい。
 もし宜しければ、「Fコールの返り値」をお教えください。


 いちおう整理しておくと、

ax=$3000, &i($21)
&m("MS-DOS v%d.%d",ax&$FF,ax>>8&$FF)

 は、結局、どのような経路で何をしているのか、というのが主題だと思っています。


      - No.10493 -    このTreeへ    コメント元:10491 へ [リストへもどる] pre

(10443) 10496Re^2: DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:shadow   2023/01/18(水) 18:35
    10493 番 文太 さんへのコメント    コメント数 2

皆さん、横から失礼します。

DOSVAXJ3 でそれぞれのimgファイルを立ち上げた結果
PC-DOS 6.3V
command.com 65091 94-04-15 6:30
ver
PC DOS Version J6.30/V
Revision 0
ファンクションコール MS-DOS v6.30

windows98起動ディスク
command.com 118164 98-05-15 20:01
ver
Windows 98 [Version 4.10.1998]
ファンクションコール MS-DOS v7.10

インストール途中で停止して起動できなかったもの
PC-DOS J7.0(PC-DOS2000)
MS-DOS 6.2/V
でした。

      - No.10496 -    このTreeへ    コメント元:10493 へ [リストへもどる] pre

(10443) 10497Re^3: DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:文太   2023/01/18(水) 20:18
    10496 番 shadow さんへのコメント

shadowさん、お久です。うれしい、うふ。

>PC-DOS 6.3V
>ファンクションコール MS-DOS v6.30

>windows98起動ディスク
>ファンクションコール MS-DOS v7.10
 (これは、あれを調べておいてよかった、という感想です。m(__)m)

 おお、想像どおり。ファンクションコールのdos ver checkは、
command.comのverを返す。
 きっと当たり前なんでしょうけれど。

 ありがとうございます!

 なお、「imgファイルで立ち上げる」など、DOSVAXJ3について、僕は
完全に無知です。言うまでもなく、僕が興味をもっているのは、Vzが
起動できるDOS環境です。できたら、オリジナルがいい。事実上、IBM系。


      - No.10497 -    このTreeへ    コメント元:10496 へ [リストへもどる] soft

(10443) 10498Re^3: DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:konno   2023/01/18(水) 22:53
    10496 番 shadow さんへのコメント

shadowさん、今年もよろしくお願いします。

> DOSVAXJ3 でそれぞれのimgファイルを立ち上げた結果
> PC-DOS 6.3V
> windows98起動ディスク

流石ですね、私も試したのですが、うまくいかなくて。(;_;)
Bochs の a.img ファイルを一度だけブート出来たのですが、2度目からは立ち上がらず。(>_<)
FD からブートできても、そこから何もできないのでメリットは全く感じませんでした。

> インストール途中で停止して起動できなかったもの
> PC-DOS J7.0(PC-DOS2000)
> MS-DOS 6.2/V

うーむ、shadowさんでも駄目ならなにかしら問題があるのでしょうかね。
ブート環境は今は全く必要性を感じないので、必要が出てきたらまた調べることにします。
ありがとうございました。

      - No.10498 -    このTreeへ    コメント元:10496 へ [リストへもどる] pre

(10443) 10501Re^2: DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:konno   2023/01/19(木) 00:07
    10493 番 文太 さんへのコメント    コメント数 1

>   DOSVAXJ3環境でのFreeCom, command.com(7.0)が、そのFコールが、DOS7.0と
> 返すことってあるのですか?
>  あるとすると、それはどんな条件で? そのときの dosboxj.conf の記述は?

この話題の私の書き込みを全部読んでいればわかるとは思いますが
通常の使用では、dosboxj.conf で指定した VER が返ってきます。
指定しない場合、ファンクションコールは 7.10 が返ってきます。
もちろんVZマクロでも 指定した値か 7.10 が返ってきます。

DOSVAXJ3 は、外部の command.com を使用していないと思われます。
その証拠に、FreeCOM をCOMSPEC で指定していても
FreeCOM 独自の内部コマンド 「?」ヘルプ は bad command になります。
?  VTDOS などでは、内部コマンド一覧が表示されます。

なので、DOSVAXJ3 で、外部の command.com を使用するにはブートイメージファイルで起動するしかないようです。
これは実用的とは思えないので検証はしません。


#10500 で、VZ環境が無くても DOSバージョンを確認できる verc.com を作ってみました。
VTDOSで VER コマンドと比べてみてください。

ver Windowsバージョンを表示
verc DOSバージョンを表示

      - No.10501 -    このTreeへ    コメント元:10493 へ [リストへもどる] pre

(10443) 10505Re^3: DOSVAXJ3は 内蔵DOSで動いているようです  投稿者:文太   2023/01/19(木) 00:31
    10501 番 konno さんへのコメント

>この話題の私の書き込みを全部読んでいればわかるとは思いますが
 う、怒られた。う、ばれた。

>DOSVAXJ3 は、外部の command.com を使用していないと思われます。
 これが結論なら、それはそれで良いのですが、ますます訳が分からなく
なってますね。
 でも、だとすると、shadowさんの実験結果は何を意味するんだろう?
 と思いましたが、

>なので、DOSVAXJ3 で、外部の command.com を使用するにはブート
>イメージファイルで起動するしかないようです。
>これは実用的とは思えないので検証はしません。

 別の仕組みがあるんですね。了解です。

 「全部読んでない」のが原因ではなく、DOSVAXJ3にはコマンドインタープリタ
を指定する方法が2つあるが(まず僕がこれを知らない、すいません)、
外部command.comを使いたい場合、ブートイメージファイルで起動する。これは、
dosboxj.confでの指定(起動)とはまったく別経路、ということですね。

 うう、怖いなぁ、もう。
 はい、僕が僕の文脈で突っ走りました。すいません。

      - No.10505 -    このTreeへ    コメント元:10501 へ [リストへもどる] soft

(10443) 10494MS-DOS version  投稿者:文太   2023/01/18(水) 15:47
    10487 番 文太 さんへのコメント    コメント数 2


 いえ、DOS 7.1 って何のつもり? といった疑問がありまして。
 幸か不幸か、僕は、DOS 8 というのがWinMEであることはよく記憶しているのですが、
以下のような状況でした。

https://microsoft.fandom.com/wiki/MS-DOS#Versions

MS-DOS 7.x

Version 7.0 (Win95, 95A) - Support for VFAT long file names. New editor.
JO.SYS is an alternative filename of the IO.SYS kernel file and used as such
for "special purposes". JO.SYS allows booting from CD-ROM to hard disk.

Version 7.1 (Win95B - Win98SE) - Support for FAT32 file system.
Last general purpose DOS to load Windows.

MS-DOS 8.0
Version 8.0 (WinME) - Integrated drivers for faster Windows loading.
Four different kernels (IO.SYS) observed.

Version 8.0 (WinXP) - DOS boot disks created by XP and later
contain files from WinME. The internal command prompt still reports
version 5.0

 PC-DOSになると、ver番号的には、またまた、微妙な違いが出てくるわけですが。


 おぼろげな記憶によると、純DOSは8GB程度までのHDしか管理できません。
FAT16だから。C,D,E,F(2GB each)かな? Fはちょっと小さめだったと
思う。

 中国のハッカー集団に China DOS Unionというのがありまして、彼らがDOS7.1
(たしか)を流行らせました。WinWorldみたいな正統派は、こういうの認めたくない
のだけど、あまりに人気があるから載せときますと言い訳しながら掲載してました。

 FAT32がDOSで効くのかなぁ? Vzどうなる? いつか、その環境のマシンを
作って試してみたいと、10年くらい前に思いました。5年以内に実験します。
 ただWinMEがいいのは、USB2.0が使えるところなんですよね。別にGUIは要らない
けれど、でも、DDWINが……。
 FDでガッチャンガッチャンは、いずれにせよ、嫌いです。

 もう一点。我々はWinXP(NTVDM)との付き合いが長かったから、きっと記憶にある
だろうと思うのですが、あれは、DOS ver.5でした。上の記述
"The internal command prompt still reports version 5.0"
意味深ですね。Fコールは、command.comのヴァージョンを返すものなんでしょう。
そして、エミュという想定外の環境以外では、DOS3のカーネルの上でDOS4のcommand.com
を使う人はふつうおらず、MSもIBMも、それをいわば禁止してるわけです。see more.com。

 もちろん、command.comは、ほぼDOSシステムの外に存在しているので、代用品で
あってもいいはずなのですが(理屈上)、ま、ふつう現実的ではないでしょう。
 で、その現実的でないこと(それに近いこと)が、エミュで起こっている、かな。


      - No.10494 -    このTreeへ    コメント元:10487 へ [リストへもどる] soft

(10443) 10495追記  投稿者:文太   2023/01/18(水) 15:57
    10494 番 文太 さんへのコメント    コメント数 1


 VTDOS以外のエミュレータのことはまったく知らないのですが。

--- from vtdos.txt ---
■シェル

VTDOSはシェルの指定が無い場合内蔵シェル(VTDCMD)を起動します。
これはコマンドラインをCMD.EXEに渡すだけの簡易的なものなので
お手持ちのMS-DOSやPC-DOSのCOMMAND.COMを利用されることを強くお勧めします。
----------------------

 とあるように、ふつうエミュレータには、超簡易版のcommand.comみたいな
ものが付いているものなのではないですかね?
 ただcommand.com相当のものを作るのは大変すぎるから、その辺から持ってきてよ
となってるじゃないですかね? 空想たくさん。

 commnad.comがほぼ外部アプリでありながら、ほぼ必須みたいである。
 奴は何をしてくれるのか?
 .comファイルが、TSRが、ロードされたとき、どうとか。
 興味深いです。EncyclopediaやUndocumented DOSを、いつか読み解きたいもの
です。


      - No.10495 -    このTreeへ    コメント元:10494 へ [リストへもどる] soft

(10443) 10499Re: 追記  投稿者:としき   2023/01/18(水) 23:25
参照先:http://toshiki.la.coocan.jp/
    10495 番 文太 さんへのコメント    コメント数 2

難しいことはわからないのですが、ちょっとここだけ。

>  commnad.comがほぼ外部アプリでありながら、ほぼ必須みたいである。
>  奴は何をしてくれるのか?

Wikipediaの「コマンドラインインタプリタ」の項目がいささかなりとも助けになる
かも。私は「コマンドインタプリタ」という言い方をしていましたが、この表現は
方言か、あるいは古い表現となってしまったかのどちらかの模様。

かつての8ビットOSであるところのCP/Mでは、command.comのような外部プログラム
としてのコマンドラインインタプリタは持っていなくて、OS本体がコマンドラインを
処理していたと記憶しています。
また、Wikipediaでも紹介されていますが、UNIXの場合、各種のシェルをすげ替える
というか入れ替えることによって、コマンドラインの操作性をガラッと変えることが
可能。ちなみに、ここでいうシェルという言葉の由来は、OSそのものを覆う「殻」と
いう意味からきているそうです。貝殻?
あと、大昔の記憶なんで当てになりませんが、DOS3のころ、PC-98用のフリーウェア
で、addconという名前のソフトがあって、これはcommand.comにパッチを当てて機能
を追加するソフトだったような。違ったかな。実家に残っているはずなんで、次に
帰ったときに確認してみよう。

      - No.10499 -    このTreeへ    コメント元:10495 へ [リストへもどる] soft

(10443) 10503Re^2: 追記  投稿者:文太   2023/01/19(木) 00:14
    10499 番 としき さんへのコメント    コメント数 1

>難しいことはわからないのですが、ちょっとここだけ。
 少なくとも僕は「難しい」話はしてませんよ。

>>  commnad.comがほぼ外部アプリでありながら、ほぼ必須みたいである。
>>  奴は何をしてくれるのか?"

>Wikipediaの「コマンドラインインタプリタ」の項目がいささかなりとも助けになるかも。
 ありがとうございます。明日、明後日あたりに。

>私は「コマンドインタプリタ」という言い方をしていましたが、この表現は
>方言か、あるいは古い表現となってしまったかのどちらかの模様。
 英語か日本語か分りませんが、この呼び名が一般的かと思いました。数日前にどっかで
みた記憶。

 ありがとうございます!

      - No.10503 -    このTreeへ    コメント元:10499 へ [リストへもどる] soft

(10443) 10508Re^3: 追記  投稿者:としき   2023/01/20(金) 00:53
参照先:http://toshiki.la.coocan.jp/
    10503 番 文太 さんへのコメント    コメント数 1

> >難しいことはわからないのですが、ちょっとここだけ。
>  少なくとも僕は「難しい」話はしてませんよ。

文太さんと私の、難しいと感じるレベルが異なるだけでしょう。
私の#10499#10495に対するコメントなわけですが、#10495

>  とあるように、ふつうエミュレータには、超簡易版のcommand.comみたいな
> ものが付いているものなのではないですかね?

とか

>  ただcommand.com相当のものを作るのは大変すぎるから、その辺から持ってきてよ
> となってるじゃないですかね?

とか

>  .comファイルが、TSRが、ロードされたとき、どうとか。

といった部分が私には難しく感じられたわけなのです。
      - No.10508 -    このTreeへ    コメント元:10503 へ [リストへもどる] soft

(10443) 10511Re^4: 追記  投稿者:文太   2023/01/20(金) 01:42
    10508 番 としき さんへのコメント

>〔以下〕が私には難しく感じられたわけなのです。

>> とあるように、ふつうエミュレータには、超簡易版のcommand.comみたいな
>> ものが付いているものなのではないですかね?
とか
>>  ただcommand.com相当のものを作るのは大変すぎるから、その辺から持ってきてよ
>> となってるじゃないですかね?"

 そうなってないんですかねぇ?
 エミュレータは難易度が高すぎるから、あまり強い好奇心がわきません、とだけ、
僕は言ってるみたいですね。
 でも、上、違うの? 他力本願。

>>  .comファイルが、TSRが、ロードされたとき、どうとか。
 ここは本気で難しいですよ。課題を表示設定してるだけです。これを解くために、
(そうしないとVzが読めない)、生きているのです。
 ご協力ください。助けて、教えて。ラブ。in the future.

 さて、なぜか気力が戻ったので、dos ver check debug版とか、コマンドライン表示版
とか、もぐら解析版とか、挑戦してみましょうか。
 やれそうな気がしてるんだけどなぁ。
 tasmでやろうかな、とか。tdとか。何も変わらないと思うけど。
 明日おきたときの、気分体調によりけりです。


      - No.10511 -    このTreeへ    コメント元:10508 へ [リストへもどる] soft

(10443) 10506シェル?  投稿者:文太   2023/01/19(木) 14:37
    10499 番 としき さんへのコメント    コメント数 3

 どうでもいいことですが。

>かつての8ビットOSであるところのCP/Mでは、
 としきさんは、CP/Mを使ったことがあるのですか? 8ビット時代には、CP/Mが
日本でも、メジャーな選択肢だった? 日本語は半角カタカナですか?

>ちなみに、ここでいうシェルという言葉の由来は、OSそのものを覆う「殻」と
>いう意味からきているそうです。貝殻?
 意味や語源は知っていました。昔とらじさんに「シェルってなんですか?」と
質問して困らせてしまったことがある。犯罪だ。
 でも、コマンドラインインタプリタ、固そうですね。カーネルはやたら柔らかそう。
ほぼカキのイメージ。やっぱり、うまいのはカーネルだろう、とか。外は食えねえぞ。

>PC-98用のフリーウェアで、addconという名前のソフトがあって、
 面白い発見があったら教えてください。
 英語圏では、商用されたものがあったみたいだけど、やっぱりメジャーには
ならなかったみたい。
 DOS汎用でも、KI-shellとかって、command.comの上に乗っかるのでしたっけ?
 これ、調べる予定はありません。Vzで十分ですから。

 内部コマンド、autoexec.batの処理。bat一般の処理などなど。こういうのはどうでも
いいんです。メモリー・プロセス管理、こっちなんですよね。スタックセグメント。
壊されたらchecksumして再ロード。Vzがちょっかい出してるはず。この辺、探りたい。


      - No.10506 -    このTreeへ    コメント元:10499 へ [リストへもどる] soft

(10443) 10509Re: シェル?  投稿者:としき   2023/01/20(金) 00:54
参照先:http://toshiki.la.coocan.jp/
    10506 番 文太 さんへのコメント    コメント数 1

>  としきさんは、CP/Mを使ったことがあるのですか?

はい、あります。PC-8801の上で動くものに触りました。

> 8ビット時代には、CP/Mが日本でも、メジャーな選択肢だった?

いいえ、どマイナーな選択肢でした。
が、CP/M上で動くアメリカ製の8ビットソフトというものはかなり豊富にあったので、
そういうものを使いたい方々はCP/Mを導入していたと聞いています。
ただ、具体的にどういうものがあったかというと、当時大学生だった私の知るところ
としては、科学技術系の専門的なソフトがあったらしい、という程度。もしかしたら
ゲームもあったかもしれませんが。
なお、当時のOh!PCとか残っていますので、広告ページとか見れば、もしかしたら
何か手がかりというか情報はつかめるかもしれませんが、面倒なので探さない。

> 日本語は半角カタカナですか?

記憶にありません。
ただし、OS部分に限定すると、半角カタカナ対応はなかったのではないかなぁ。
アプリ上では、半角カタカナも使えたかも。

>  DOS汎用でも、KI-shellとかって、command.comの上に乗っかるのでしたっけ?

私の記憶が確かなら、KI-shellはDOS汎用ではなかったはず。
つまり、PC-98用とかDOS/V用といった版があったのではなかったかなぁ。
いや、この辺、いろいろと記憶が混乱していて。
当時、生のcommand.comの何が一番改善を期待されていたかというと、コマンドライン
の入力履歴。DOS5あたりからはdoskeyが純正で付属しましたよね。
そしてもうひとつが、画面出力、すなわちコンソールの履歴。
DOS3の時代、PC-98で履歴機能を使いたいとなると、2大巨頭がhistory/xscriptの
ペアとKI-shell。historyは入力履歴でxscriptが出力履歴。KI-shellは入力履歴が
あったのは覚えているけど、出力履歴はどうだったかな。
で、これら3つのソフトのうち、どれがDOS汎用で、どれが機種依存か、というのが
あったはずなんですが、もうすっかり、忘却とは忘れ去ることなり、君の名は。
それはさておき。
その後、一部の人たちは、某エディタを常駐させることでこの辺の問題を解決して
しまったわけなんですが、もしKI-shellがcommand.comの上にのっかるものであると
定義するのであれば、そのエディタに対しても同じ表現を使うべし。

      - No.10509 -    このTreeへ    コメント元:10506 へ [リストへもどる] soft

(10443) 10512Re^2: シェル?  投稿者:文太   2023/01/20(金) 01:42
    10509 番 としき さんへのコメント

>もしKI-shellがcommand.comの上にのっかるものであると
>定義するのであれば、そのエディタに対しても同じ表現を使うべし。

 はい! すごく良く分かりましたよん!


      - No.10512 -    このTreeへ    コメント元:10509 へ [リストへもどる] soft

(10443) 10520Re: シェル?  投稿者:としき   2023/01/21(土) 21:58
参照先:http://toshiki.la.coocan.jp/
    10506 番 文太 さんへのコメント    コメント数 1

実家から、5メートルあまりに育った柿の木を3メートルくらいに刈れ、という
オーダーが来まして。
なので今夜は実家に1泊。明日の昼前ぐらいには、電動のこぎりでばっさりとやって
しまうつもりです。

さて。

> >PC-98用のフリーウェアで、addconという名前のソフトがあって、
>  面白い発見があったら教えてください。

現物を確認しましたが。
案の定、私の思っていたのとは全く異なるソフト。
正式名称は Add Console driver。作者はTurf Hero氏。
手元にあったのは、ドキュメント上でのバージョン標記は2.04aだけどアーカイブ
ファイルの名前はaddcon3.lzh。
ドキュメント上ではPC-98のDOS3が必要となっていますが、DOS2では動かないという
ことなんでしょう。DOS5以降で動くかどうかは不明。
メモリに常駐する、いわゆるTSRです。
機能としては、

・HDDに一定時間アクセスがなかったらヘッドを退避
・一定時間キー入力、または標準出力がなければ画面表示停止
(スクリーンセーバーもどき)
・キー入力のバッファを標準の16文字から244文字に増加
・現在時刻を画面右上に表示
・バッククォートのフォント搭載機種の場合は表示を可能とする
・¥マークをバックスラッシュに置き換えて表示
・カーソル形状の変更

というような機能がメイン。なんか、いかにもVzとは相性が悪そう。
また、そのほかにも細かい機能が多数。キーテーブルの変更とか。
だけど、入出力の履歴はない。
その他にも、キーボード拡張系のソフトでkbddというのも出てきました。
これは現在でもベクターにありますね。
このソフト単体では

・キーバッファを16文字から116文字に拡張
・キーのクリック音
・キーボードロック

あたりがメインですが、その他の関連プログラムを使うことによって

・nferやgraphキーの機能拡張
・キーテーブルを変更してドボラック配列やascii(英語)配列に変更
・xscript対応可能
・FEPがなくてもローマ字/かな変換可能(半角/全角対応)

などということができました。
中でも感動的だったのがキーボードマクロ機能。
例えば、長い文字列を入力するならFEPの辞書登録で対応したりしましたが、この
ソフトを使うと、ファンクションキーとかリターンキーとかも登録できたのです。
当時、入社3年目ぐらいだったかな、データベース担当に配属されて社内システムに
ひたすらデータ入力させられていたとき、定型文ではなく定型作業の一連の入力を
こいつで登録することで、えらく楽をさせてもらったことを思い出しました。

あと、ついでにベクターを調べて確認したこと。
historyはDOS汎用のようですね。一方で、xscriptは機種依存のようです。
KI-shellについては、調べがつきませんでした。

      - No.10520 -    このTreeへ    コメント元:10506 へ [リストへもどる] soft

(10443) 10527旧8とDOSソフト  投稿者:文太   2023/01/25(水) 21:28
    10520 番 としき さんへのコメント    コメント数 1


 いろいろと調べてくださり、ありがとうございます。
 かなり興味深いですね。ハードのほうにも手をだしてますねぇ。BIOSコール
みたいなことをするとそんなことができるんでしょうね。IBM PCでやってくれ!
 後日。m(__)m

 『IBM-PC ハードウェアバイブル』なる本が翻訳されたのが、1994年。
 空白の時代、のちになっては使いものにならない技術の蓄積。ああ。
 こうして日本ではDOSが捨てられた。


      - No.10527 -    このTreeへ    コメント元:10520 へ [リストへもどる] soft

(10443) 10528Re: 旧8とDOSソフト  投稿者:としき   2023/01/25(水) 23:51
参照先:http://toshiki.la.coocan.jp/
    10527 番 文太 さんへのコメント    コメント数 1

>  こうして日本ではDOSが捨てられた。

欧州での捨てられ方と比較できれば、論文が書けそうですね。
欧州と一くくりにするのではなく、国によって異なるかもしれないけど。

      - No.10528 -    このTreeへ    コメント元:10527 へ [リストへもどる] soft

(10443) 10531フィンランド事情  投稿者:文太   2023/01/26(木) 15:31
    10528 番 としき さんへのコメント    コメント数 1


 フィンランド人によるRAMDiskドライバのようです。
 ヘルシンキ工科大学の学生さんだったみたい。
 さて、この人たちが(しょうがないんだけどね、当時、最先端近くを日本人は
走っていたんだから。NECに恨みはない)、2バイト文字の言語を操る僕らと同じ
運命をたどったとは、思えないんですよね。論文は書かないけど。

---------------------------------------------------------------------------
SRDISK (TM)
ReSizeable RAMDisk versio 2.04
XMS ja EMS muisteille
Copyright (c) 1991-1993 Marko Kohtala

* Yhteensopiva MS-DOS versioiden 3.00-6.x ja DR-DOS 5 ja 6 kanssa.
* XMS - Extended muisti 286 ja uudemmissa koneissa joissa on HIMEM.SYS
tai muu XMS 2.0 laiteajuri.
* EMS - Expanded muisti. LIM/EMS versio 3.2 ja 4.0.
---------------------------------------------------------------------------

 英語の.docもついてるから、使えます。

 しかし「凋落」。きつかったなぁ。ああ、チップス法。
 ただ現実をしかと受け止めよ。
 来週、NHK日曜夜9時。半導体ワォーみたいなの。


      - No.10531 -    このTreeへ    コメント元:10528 へ [リストへもどる] pre

(10443) 10534Re: フィンランド事情  投稿者:としき   2023/01/27(金) 22:58
参照先:http://toshiki.la.coocan.jp/
    10531 番 文太 さんへのコメント    コメント数 1

>  さて、この人たちが(しょうがないんだけどね、当時、最先端近くを日本人は
> 走っていたんだから。NECに恨みはない)、2バイト文字の言語を操る僕らと同じ
> 運命をたどったとは、思えないんですよね。論文は書かないけど。

この部分だけを切り取ると、全く同感です。
私が思うに、日本よりも早く、DOSなんぞという古臭いものには見切りをつけて
とっとと卒業してしまったのではないか、と愚考するしだい。例えば、1988年から
1996年までヘルシンキ大学に在学していたリーナス・トーバルズ氏は1991年にLinux
などという楽しいものを作っていたりするわけですから。

おおむね世界的にDOSが見捨てられたのは、ネットワーク接続の困難さとか、動画など
を含めたアプリケーション系の互換性を含めた貧困が原因だろうと思っています。
DOSでyoutubeを見るなんて、わかっている人からすると、ぞっとすることでしょう。
私自身は動画再生なんて年に3〜4回ですから、こういう人はずっとDOSでもいいの
かもしれません。が、これは明らかに異端。だという自覚がある。
そして、世界は多数派の考えで動く。もちろん、民主主義を嫌いな人って、それこそ
世界中にごまんといて、そういう人が往々にして権力を握っていたりするわけです。
あるいは、古い考え方にしがみついている人もいる。
どこそこの土地はわが国に支配されなければならない、とか。
同性婚反対とかDOS万歳とか夫婦別姓反対とか死刑廃止反対とか大麻解禁反対とか。
私自身、いささかそういう傾向があることは自覚しているつもりですし、それが世間
の流れとは異なっているということもまた、一応は自覚しているつもりです。
うん、でも、自覚は薄いかも。


ついでに、RAMDISKの話。
私がPC-98で使っているXMS専用Ramdisk DriverのCRDは1993年の最新版です。
ベクターは登録が古いソフトは1995年12月に一度全部を再登録していますが、それ以降
に登録されたRAMDISKもいくつかあるようですね。

cf.
https://www.vector.co.jp/vpack/filearea/dos/hardware/mem/ram/by_date.html

      - No.10534 -    このTreeへ    コメント元:10531 へ [リストへもどる] soft

(10443) 10536Re^2: フィンランド事情  投稿者:文太   2023/01/28(土) 01:41
    10534 番 としき さんへのコメント

 たぶん今晩は眠れないのだろうということで。
 明日というか今日、胃カメラなので。死にそうなぐらい気持ちの悪い医療体験。

 さて。

>私が思うに、日本よりも早く、DOSなんぞという古臭いものには見切りをつけて
>とっとと卒業してしまったのではないか、と愚考するしだい。

 うーんとね、DOSというOSの話とNEC旧8という不幸な話が、《僕の》中
でくっついてしまってるんですね、たぶん、としきさんはお気づきだと思うけど。
 でも、現実に、歴史的に、同期してしまった、この国では。「多過ぎる文字
(フォント)はROMに入れてしまえ」は、すばらしい発想だったんでしょうけどね、
最初。たしかに速かった。

 で、欧米の事情を想像すると、いわばシームレスに展開したんですよ。
 16bit DOS から fake 32bit Win9x、そしてNTへ。最後のところはジャンプ
でしょう、たぶん。NU (むちゃんこディスク)のdocとか、ちらっと覗いたので。

>例えば、1988年から1996年までヘルシンキ大学に在学していたリーナス・トーバルズ氏は
>1991年にLinuxなどという楽しいものを作っていたりするわけですから。

 そっかぁ。ヘルシンキ大学。ヘルシンキ工科大学と微妙に違うけど、東大と東工大
の関係か。いまや、このペアでも立ちうちできまい。
 91年、リナックスかぁ。
 僕はそっちいきませんけどね。

 もっともリナックスの誕生とDOSの衰退は、あまり、論理的な、そして現実的な
関係はなかったように想像します。大衆はリナックスなんて容易には使えなかった。
使う意味も分からない。
 しかし、コンピュータの世界は資本主義的ではあるけれど、民主主義の世界ではないな。
 (例の「MASMの歴史」サイトで、MS対ボーランドの戦争の経緯について読みました。
ボーランドの社長さんが僕的にいい人だとしても、社員はどんな気持ちだったんだろう?
とか思いました。笑顔が痛々しい、、、。)

 歴史がどうあれ、僕は変人だ、うん、これに間違いはない。青春の思い出もスキル
もないのに。
 なんなんだろう、この執着と執念は。しかし、c.mos, Vz source 1.01をちょっと
調べて、幸福になったのは、誰にも疑えない事実なのです。
 幸せを重ねる。これしか人生の目標はございませぬ。胃カメラにも耐えます。

>おおむね世界的にDOSが見捨てられたのは、ネットワーク接続の困難さとか、動画など
>を含めたアプリケーション系の互換性を含めた貧困が原因だろうと思っています。

 なるほど。そうなんでしょうね、技術的には。
 インターネットが簡単にできるOSがいい。
 もう少し手前にもどって復習すると、ハード的リソース不足の時代にCP/Mを引きずり
ながら(16bit segment management)展開したDOSなんですよね。切りたいよね、
売る側は、Win9xの時代にすでに。GUIはともかく。
 32bit CPU なのだもの、あんなの、要らないんですよねぇ。

https://www.vector.co.jp/soft/dos/prog/se001158.html?ds
 なんてのを、たぶん、としきさんのお陰で見つけました。うーん、青春だったんだろうなぁ。
 あお、あのお方のお名前が。
 c.mosさんが、構造化プログラミングのために、あのマクロを考え付いたソースに
ついては、いまでも気になっていて。
 optasmって、ネットにおそろしく情報がない、、、。消えたアセンブラ、公式には
誰もその存在を記憶していない、、、。PC Magazineの絶賛にもかかわらず、アメリカにも
情報が残っていない、、、。また、日本でだけ受けたの?

 RamDisk Driver自体は、ほんと話の偶然なの。
 有効に使いたいのですけどね。

 やっぱVz(マクロ)だろう、とか思ってます。なんだよ?
 どうか、どうか、適当にお付き合いくださいませ。


      - No.10536 -    このTreeへ    コメント元:10534 へ [リストへもどる] soft

(10443) 10526NDOS  投稿者:文太   2023/01/25(水) 21:22
    10506 番 文太 さんへのコメント

 すいません、全部引用です。
 ようやくマニュアルを見つけたところ(NU 7.0, manual NU 6.0)

 おお、PKに使っている人がいた。ということは、Vzといけるのでしょう。
 そのうちゆっくり遊んでみます。
 Undocumented DOS も、これに言及してたけど、あきらかに、4DOS推しでした。

-------------------------------------------

KITIさん PK (14) 11305 95/04/15 13:35

  NDOS ってのは、シマンテック社のノートン・ユーティリティーズを買うとつ
いてくる、完全に COMMAND.COM の上位互換性を持ってさし替えられるシェル、
ということになっています(実際はちょっと違うので不具合が出る場合もある)。
  機能としては、拡張 COMMAND.COM + BU + KI-SHELL + α、て感じです(それ
ぞれのフリーソフトの方が専門的な機能がたくさんあるけど)。また、メモリ
常駐量も少ないのがいいところ。

-------------------------------------------

NDOS FEATURES

NDOS is a "DOS shell" (a program that gives you access to DOS functions and
commands), but it's unlike most DOS shells on the market. Virtually all of
these other shells are designed to isolate the novice user from the DOS
command line. NDOS, on the other hand, is intended to make DOS easier to use
and to make you more productive while working at the command line. It
provides enhancements to most of the DOS commands, as well as more than 40
new commands. These improvements make NDOS a much richer and more powerful
working environment than COMMAND.COM, without sacrificing the compatibility,
flexibility and control you get from working at the command line.

NDOS is a complete replacement for COMMAND.COM, the command processor
provided with DOS (either MS-DOS or PC-DOS). NDOS is compatible with DOS
versions 2.1 and above and the OS/2 DOS compatibility box, adding many
enhancements to your DOS prompt, including: NDOS requires 3K of your
precious RAM for its resident portion (less than 1K with UMBs), and can use
EMS, XMS, or disk for swapping its transient portion.


      - No.10526 -    このTreeへ    コメント元:10506 へ [リストへもどる] soft

(10443) 10504PC DOS 7 Update  投稿者:文太   2023/01/19(木) 00:15
    10494 番 文太 さんへのコメント    コメント数 1

 独り言です。

--- from PC DOS 7 Technical Update ---

Appendix A. PC DOS 7 Interrupts

This chapter contains information to support use of the PC DOS 7 interrupts.
PC DOS 7 reserves interrupt types 20H to 3FH for its use. Absolute memory
locations 80H to FFH are reserved by PC DOS 7. All interrupt values are in
hexadecimal.

--------------------------------------

 NEC 98の出身でありまして、何でしたっけ? 「開発者セット」? みたいなDOSを
買ったことがなかったのです。だから、たぶん、debugも、exe2binも、linkも、mapsymも、
symdebも、masmも、もっと大事な、この手のテクニカル・マニュアルというものも、
見たことがなくて。
 (Vz 1.0を、ビレッジ・センターで買いました、なんて通ではまったくない。
 たぶん、僕はそのころ、受験勉強をしていたか、教習所に通っていたか、、、。
 もしかしたらバスケしてたかも。)

 もちろん、前に話題に出たアスキーの『黒本』(Vzマニュアルにあらず)とか
持っていたりするし、その手の本も所有はしている。しかし、読んでない。読もうとした
こともない。で、Undocumented DOSとか読んでる。

 基本は、上のようなところに書いてあるのですね。
 あと不幸は、NEC 98, DOS6 な頃、DOS3.3で十分なVzに出会ってしまい、そして、時代
はWindows。95, 98, ME, XP ...。
 あるべきところにある正しい情報に、まず当たりなさいよ。全体像をつかめ!

 Vzのソースがどうとか、Pascalがどうとか言いたいなら、まず、Technical Updateを
眺めよ、です。

 ときどき日本語用もあるみたいですが、上のようなマニュアルもプログラム(OS)
本体も、容易に手に入ります(基本英語版)。
 ただ、IBM系DOS(PC-DOS)にしろ、MS-DOSにしろ、98用以外のDOS資料って
日本語で容易に手に入る? というのもあります。
 あるところにはあるのでしょうけどね。というか、過去形。あった、のでしょう。今は?

 『98ハードに強くなる本』とかも10年くらい前に買った……。1年前に捨てようと
して、思いとどまった。

 僕は、この方面では、日本語を基本的に捨てていますので(処理対象として)、気にして
ません。ただ、情報自体が英語なんですよね、入手が簡単なのは。
 ですから、さきほど、あのように書きました。Get help from DeepL if you are like-minded.
I might help ....

 マニアックなコレクターになりつつある、今日このごろ。

 けっこう暇そうじゃん? いえ、いま瞬間的な凪(なぎ)なだけ。嵐はすごそこ。

      - No.10504 -    このTreeへ    コメント元:10494 へ [リストへもどる] soft

(10443) 10507PC DOS trivia  投稿者:文太   2023/01/19(木) 14:39
    10504 番 文太 さんへのコメント    コメント数 2


 こういう独り言が多くて、すいません。
 ちょっと気になったのです。日本IBMのPC-DOSって、本国アメリカのPC-DOSって
どんな具合だったの? と。PC-DOSとMS-DOSが違い始めたのはいつ? などなど。

 そもそも、vtdos.txtのcommand.com相性表は、ver6 近辺が中心だったじゃない
ですか? で、PCとMSで、微妙に違うらしい。
 それに、記憶をたどると、日本ではNEC(ときっとエプソン?)が圧倒的だった
から、PC-DOSって、DOS/Vが登場するまで、ほぼシェアなかったんじゃないのかな、
云々。日本でIBMのマシンを買ったらPC-DOSだったんでしょうが、これもDOS/Vの
時代になってからでしょう? が、アメリカでは、きっとやや高級志向だったかも
しれないけど、IBMのマシンならPC-DOSだったのでしょう。
 マニュアル整備・断片的サポート体制の用意その他の状況証拠から、本国アメリカ
では、IBMは十分に強かったと想像しました。数値はありませんが、きっとMSに
負けない程度に。Windows95で、ぶっちぎっちゃったんでしょうね。PC事業からの
撤退はもう視野に入っていたかも。

 (もっと深い私語:でも、2003年くらいに、まだIBMはThinkPadの広告を
していた。某超著名文芸評論家−−けっこう右翼=ブッシュJRのお友だち−−が
ThinkPadを叩いている広告が、機内のTime誌に載っていた。某学会にいったとき、
ハワイ行きの飛行機の中で見たのです。「ゲイツ(評論家の名前)、嫌な奴だよなぁ」
と同行の先生と話をした。MSがらみの冗談を挟む心の余裕はなかった。超高名な
人だったから、先生も僕も、(仕方なく)彼の著作を2,3冊読んでいた。
 続けちゃう:しかし、コンピュータ界の巨人IBMが作るPCのOSが、MSの
Windowsであるという時代がしばらく続いたとは、、、。ふててなかったのかなぁ。
「プライドとか関係ない。商売だからしょうがないのだ」かな?)


 とにかく、僕の疑問の一部は以下で解消されました。6.1から2社は分かれ始めた。
7.1 まで。そして、PC-DOS 7.1では、Fat32 supportがありえた。
 つまり、debugその他の開発ツールは、6.1以前までは、同一のはずだ、、、。


 さらにディープで「要らぬお節介」な一言。下のようなのは、DeepLなんかに
入れず、ゆっくり3回読みましょう。意味鮮明な術語まみれの英語を読むのは
(たぶん)けっして難しくない。自信の獲得。「心の壁」の乗り越え。諦めない
忍耐力。その気なら、ですが。残り時間との兼ね合いもあるでしょうけどね。
 でもそっちを選ぶと、狭まると思うと愚考いたします。c.mosさんもwingさんも
この程度はガッツで読み解いた(必要なところだけ)と想像しています。

https://winworldpc.com/product/pc-dos/2000

PC-DOS 2000

IBM PC-DOS was an IBM branded version of MS-DOS licensed from
Microsoft for use on the IBM PC system. Versions of PC-DOS paralleled
that of MS-DOS up until version 6.1, where PC-DOS was independently
maintained by IBM up until 7.1, the last version. Although not the only
OS available for the IBM PC when it came out, it quickly became popular
due to its low cost in comparison to the others. Its direct competitors
on the PC at the time were CP/M-86 and UCSD p-System. The major
differences between PC-DOS and MS-DOS were only in terms of driver
support and built in programs until version 6.1 where development
diverged.

For Microsoft and other OEM DOS releases, please see the MS-DOS
product page.

The first version of PC-DOS was released in August 1981 with the IBM
PC. The last version released by IBM was PC-DOS 7.1, which had updates
all the way up until 2003. This last version of DOS is still in use by
some hardware developers usually embedded into recovery tools and BIOS
flashers.

This OS does not have a GUI. It uses a command line interface,
however PC-DOS 4 and later, like MS-DOS, also included the optional
graphical DOSShell program. Like other DOSes, third party GUIs can be
installed.


Release notes

PC-DOS 2000 is a minor update to PC-DOS 7.0 that fixes Y2K bugs. It
is marketed as "PC-DOS 2000" but it reports itself as "IBM PC DOS 7.00,
revision 1".

7.0/2000 was the last complete release. Although some embedded
products were released with portions of "PC-DOS 7.1" that added Fat32
support.

      - No.10507 -    このTreeへ    コメント元:10504 へ [リストへもどる] pre

(10443) 10510Re: PC DOS trivia  投稿者:としき   2023/01/20(金) 00:54
参照先:http://toshiki.la.coocan.jp/
    10507 番 文太 さんへのコメント    コメント数 1

>  さらにディープで「要らぬお節介」な一言。下のようなのは、DeepLなんかに
> 入れず、ゆっくり3回読みましょう。意味鮮明な術語まみれの英語を読むのは
> (たぶん)けっして難しくない。自信の獲得。「心の壁」の乗り越え。諦めない

まだ1回しか読んでいません。
でも、この手のテクニカルタームが主の文章なら、私には何とかなる。
なお、私の英語力を推し量る上で重要な情報かもしれませんが、辞書を引く必要が
あったのは以下の3つのみ。

due to
competitor
diverged

      - No.10510 -    このTreeへ    コメント元:10507 へ [リストへもどる] soft

(10443) 10513Re^2: PC DOS trivia  投稿者:文太   2023/01/20(金) 01:43
    10510 番 としき さんへのコメント

>でも、この手のテクニカルタームが主の文章なら、私には何とかなる。
 としきさんには未来があり、もともとそういう資質だった。心配していません。
 そのままでいいと思います。

>なお、私の英語力を推し量る上で重要な情報
 外国語なんて、まず、辞書ひいて考える、でいいんです。理屈は、ちょっと、だけ、
あとに。理屈は超単純。ただ、例外の宝庫だけど、そんなの気にしない。

due to ;暗記 辞書で例文を読む
competitor ;compete, competition コンペ@ゴルフ。cf. teach"er", visit"or"
diverged ;di + verge 気にせず、見た文章を見つめる。

The major differences between PC-DOS and MS-DOS were only in terms of driver
support and built-in programs until version 6.1 where development diverged.

ジーニアス大英和
diverge 語源〔中世ラテン語 divergere.「di-(分離)+-verge(傾く, 曲る)分れる」
 この辞書の記述の何かが記憶に残るならめっけもの。
 PC-DOSとMS-DOSが分かれたのが、いつ、どの版 みたいなのが、実際的です。

 なんだ、英語できんじゃん。
 ありがとうございます。

      - No.10513 -    このTreeへ    コメント元:10510 へ [リストへもどる] pre

(10443) 10532MASM の歴史  投稿者:文太   2023/01/27(金) 16:34
    10507 番 文太 さんへのコメント    コメント数 2

MASM Changelist

http://old-dos.ru/index.php?page=files&mode=files&do=show&id=122
 ページの真ん中あたり。

 英語です。しかし、こんなものもしっかりロシアのサイトに保管してあるとは。
 元のサイトがどこだか探せてません。この情報で十分でしょう。ものすごく
綺麗に整理してある。.chmが読めてよかった。

 ざっと見たところ、Vzソースがmasm4でアセンブルできるなら、masm1でも
できんじゃないだろうか。たんにc.mosさんがmasm3以前をもってなかった、
もっぱらoptasmを使っていた、ということではないのかな。

 8086のアセンブリ言語には、インテル系とAT&T系があるそうで、本物の
命令はインテルが決める。ただ擬似命令(翻訳機アセンブラへの命令)は、
ま、MSが決める。この部分はガンガン進化してもおかしくない。ただ、Vz
は、そもそも、機種依存の擬似命令をそんなに使ってるとは思えない(少しある
んでしょうけど)。だから、、、。


 MASM Changelist。偶然みつけました。もっとも「その気」がないと偶然も
起こらないのですが。

 ふたたび、"due to"出てきてます >としきさん

 がんばりすぎずに、DeepLしましょう。

 それでも力まず、何度も原文を眺めるのはいいことです。
 DeepLの訳文と照合する、みたいなのは、したいならそれも悪くはないと思うけど、
ざっと意味がくめたら、原文で何度も読むのが早道だと思う。
 飽きずに何回も何十回も、これが秘訣。脳が何を記憶するかなんて、我々の知った
ことではない。勝手に記憶してちょーだい。

 余計なもう一点。我々の脳のパーサーは常に変化する。前向きな方向の変化は、
その言語を眺めていることで起こる。考えてどうなるものでもない。脳は勝手に
「考えて」いますが。ここは、たぶん、人工言語と少し違う。自然言語は情報的
冗長性が、とても高いと思う。

 冒頭の部分は、DOS 1.0以前の話もあり、Tim Patterson of SCP (author of
debug.exe & 8086 assembler) のインタビューもあって、かなり楽しいです。


      - No.10532 -    このTreeへ    コメント元:10507 へ [リストへもどる] soft

(10443) 10533Re: MASM の歴史  投稿者:文太   2023/01/27(金) 16:53
    10532 番 文太 さんへのコメント

.chm 元サイト

http://bytepointer.com/

 case文に従ってください。
 お、面白い! 半端ない。2022年にも更新されていて、tasm version もあります!
 toolの欄も面白そう。Win32 Console もの、多し。
 いいなぁ、1バイト文字文化は。


      - No.10533 -    このTreeへ    コメント元:10532 へ [リストへもどる] soft

(10443) 10538DOS ver & SETVER  投稿者:文太   2023/01/28(土) 21:53
    10532 番 文太 さんへのコメント    コメント数 1

 まだその話、続くの?
 続いちゃったんですよ。偶然といえば偶然。
 このあと実験をするかは分かりません。うーん、ちょっとある仮説が外れたの
ですが、まあ、いいよ、という領域のお話。


In DOS 4.0x the version number returned by INT 21h function 30h is subject
to an internal version "lie" table (the basis for SETVER) which returns
fake version numbers for specific programs using a list embedded
in IBMDOS.COM/MSDOS.SYS.

 ある種のプログラムがDOS ver checkをする場合、やはり、MSDOS.SYS(カーネル)の
中を覗くものらしい。
 ということは、vtdosがcommand.comのverを返すというのは、vtdosの特殊事情と
言えるのかもしれない。


In DOS 5.0 and later if AL=1 on entry to INT 21h function 30h then a version flag
indicating whether DOS is in ROM (08h) or not (00h) is returned in BH instead
of the OEM number.

 実験したら面白い?

INT 21h function 3306h was added in DOS 5.0 which always returns
the true DOS version.
 「常に」「真の」? vtdosではどうなるか? 僕はvtdosの仕様みたいなのを
あまり深くまで追うつもりはないのですが。

This function returns the major version in BL, the minor version in BH,
the revision in DL, and the version flag in DH.
Only PC DOS 5.00.1 and PC DOS 2000 return a non-zero revision.
The version flag indicates whether DOS is in ROM (bit 3 set) or
loaded in the HMA (bit 4 set).

 3306h added!

 興味ないかもしれないけど、そして、今やarchive.orgだけど、

https://web.archive.org/web/20200328183831/https://sites.google.com/site/pcdosretro/dosver

 すごいサイトです。
 どうやら、PC DOS 7 を主導して作った人みたい。

from IBM PC BIOS information
Versions of MASM later than 4.0 cannot be used to build the IBM BIOS source code
since older constructs and macros are used.

 MASM 4 あたりに、やっぱり境界線があるのかも。


      - No.10538 -    このTreeへ    コメント元:10532 へ [リストへもどる] soft

(10443) 10540get true ver (ax=$3306)  投稿者:文太   2023/01/29(日) 22:34
    10538 番 文太 さんへのコメント

 面白くない結果でした。

=== Macrotmp by B ===; always returns "true" dos version
* M
50 ^^ "Macrotmp"

ax=$3306, &i($21) ;vtdos returns 6.20 here
&m("MS-DOS v%d.%d",bx&$FF,bx>>8&$FF) ;vtdos returns the ver of
; ax=$3000, &i($21) ;command.com used again.
; &m("MS-DOS v%d.%d",ax&$FF,ax>>8&$FF) ;So made, it seems.

*

-------------------------------------------------------------------
INT 21 - DOS 5+ - GET TRUE VERSION NUMBER
AX = 3306h
Return: BL = major version
BH = minor version
DL = revision (bits 2-0, all others 0)
DH = version flags
bit 3: DOS is in ROM
bit 4: DOS is in HMA
AL = FFh if true DOS version < 5.0
Notes: this function always returns the true version number, unlike AH=30h,
whose return value may be changed with SETVER
because of the conflict from the CBIS redirector (see next
entry), programs should check whether BH is less than 100 (64h)
and BL is at least 5 before accepting the returned BX as the true
version number; however, even this is not entirely reliable when
that redirector is loaded
Under MS-DOS/PC DOS, DR DOS, PTS-DOS, S/DOS this function does not
use any of the DOS internal stacks and thus is fully reentrant
OS/2 v2.1 will return BX=0A14h (version 20.10)
Windows 95 and Windows 95 SP1 return version 7.00; Windows 95 OSR2
and OPK3 (OSR2.5) return version MS 7.10.
the Windows NT DOS box returns BX=3205h (version 5.50)
Novell DOS 7 returns IBM v6.00, which some software displays as
IBM DOS v6.10 (because of the version mismatch in true IBM DOS
mentioned for INT 21/AH=30h); versions through Update 15 all
return revision code 00h
-------------------------------------------------------------------

--------N-213306-----------------------------; NEVER MIND
INT 21 - CBIS network - NETWORK REDIRECTOR - ???
AX = 3306h
Return: AX = 3306h
BL = ??? (usually 00h)
BH = ??? (usually 00h or FFh)
Note: unknown function, is in conflict with DOS 5+ version call
SeeAlso: AX=3306h"DOS"

      - No.10540 -    このTreeへ    コメント元:10538 へ [リストへもどる] pre

(10443) 10455Re: 各種DOSエミュでの more.com の挙動  投稿者:文太   2023/01/03(火) 01:35
    10453 番 konno さんへのコメント


#6641
>Win98のcommand.comで、WinMEのmore.comがはねられたときは、
>あのなぁ、と言いたくなった。

 これは、椅子に座っているのに、膝がガクガクするほど衝撃的なニュースだったの
ですが(としきさんは、findの痛い経験を覚えていた、僕は、まったくここから何も
学ばなかった。記憶もあるはずがなかった)、とにかく、

MSDOS Player
DOSVAXJ3
NP2

 の3人の作者に、身元を明かすAPIを作ってくれませんか、こんなことがありうる
んです、とお願いするのが、長い目でみて、良いことなのではないかと思いました。
 まだアクティブなら、ですが。

 ダメなら、探す。Undocを読むと、それは不可能ではないんだろうな、とか素人は空想
します。APIは、10#さんのプロとしての、プライドというか、最初の一歩だったんだろう
と、ふたたび、空想しました。VWXも、当然。

 要らないのかな? と、急に思いました。アプリはOSの僕(しもべ)。


      - No.10455 -    このTreeへ    コメント元:10453 へ [リストへもどる] soft

(10443) 10475Re: 各種DOSエミュでの more.com の挙動  投稿者:としき   2023/01/10(火) 00:13
参照先:http://toshiki.la.coocan.jp/
    10453 番 konno さんへのコメント    コメント数 1

各エミュレータでの動作レポート、ありがとうございます。
いくつか気になったことを徒然に。

> VTDOS
> としきさんの more.com は PC98チェックがうまく出来ない、IBMチェックを先で対応できる。
> NECDOS6.2の more.com は、VTDOSのVTXET に対応しているようだ。

VTDOSって、PC-98のエミュレータではないですよね。
それなのにNECDOSのmoreがきちんと動くのはちょっと驚き。
DOS6/Vのmoreの動作がどうなのか、気になります。

> MSDOS Player

こいつがPC-98のエミュレータならともかく、仮にAT互換機のエミュレータだったとすると、

> どの more でも行数が 25行に固定されてしまう。ローメモリの値が固定?

これはまずいような気がする。だって、私の記憶が確かなら、DOS/V付属のmoreは行数の
変化に追従できたはず。もし私の記憶が正しくて、DOS/V上でDOS/V付属のmoreは正常に
機能するのにかかわらず、MSDOS PlayerではDOS/V付属のmoreが正しく機能しなかったと
すると、これはエミュレータ作者に改善要望を出しても良いかと。

> DOSVAXJ3

これは確か、そもそもがAXマシンのエミュレータだったはずなので、DOS/Vエミュ精度が
低くても仕方ないかなぁ。

> NP2

これって私の記憶が正しければ、PC-98のエミュレータですよね。
そして、私のmoreのドキュメントでも軽く触れていますが、そもそもDOS純正のmoreの改行の
挙動が、PC-98とDOS/Vで微妙に異なるのですよ。
ということで、NP2以外も含めて、DOS/V版moreでの各エミュでの実験結果との比較もほしく
なってしまいました。

      - No.10475 -    このTreeへ    コメント元:10453 へ [リストへもどる] soft

(10443) 10480Re^2: 各種DOSエミュでの more.com の挙動  投稿者:konno   2023/01/11(水) 00:19
    10475 番 としき さんへのコメント

> VTDOSって、PC-98のエミュレータではないですよね。
> それなのにNECDOSのmoreがきちんと動くのはちょっと驚き。

これは元のmoreにIBMチェックが入っていたか、NECが入れたかのどちらかでしょうね。
たぶん元から入っていて、NECがPC98チェックを追加したのではと想像します。
ローメモリから行桁取得がそのままIBMチェックになりV-TEXTになるので、DOS3は単に決め打ちしていたのかな。


> これはまずいような気がする。だって、私の記憶が確かなら、DOS/V付属のmoreは行数の
> 変化に追従できたはず。もし私の記憶が正しくて、DOS/V上でDOS/V付属のmoreは正常に
> 機能するのにかかわらず、MSDOS PlayerではDOS/V付属のmoreが正しく機能しなかったと
> すると、これはエミュレータ作者に改善要望を出しても良いかと。

これは #10479 に書いたように、私の勘違いでした。
作者様に改善要望を出してしまったので、謝罪メールしました。m(__)m

> > DOSVAXJ3
> これは確か、そもそもがAXマシンのエミュレータだったはずなので、DOS/Vエミュ精度が
> 低くても仕方ないかなぁ。

精度というか、2重改行が良くわからないですね。それに対応しているToolsのmoreも。(^^;

> ということで、NP2以外も含めて、DOS/V版moreでの各エミュでの実験結果との比較もほしく
> なってしまいました。

まとめた結果をwikiにでも上げればよさそうですね。
ここの家主はなまけものなのでやるかどうかあてになりません。(^^;

      - No.10480 -    このTreeへ    コメント元:10475 へ [リストへもどる] soft

(10443) 10479moreの問題の原因は FreeDOSのcommand.com でした  投稿者:konno   2023/01/10(火) 23:49
    10453 番 konno さんへのコメント    コメント数 1

今年の年初から話題にしている more の問題ですが
#10453:各種DOSエミュでの more.com の挙動  投稿者:konno   2023/01/02
この記事の内容が間違っていたことがわかりました。

> MSDOS Player
> どの more でも行数が 25行に固定されてしまう。ローメモリの値が固定?
> 入力待ちで[Ctrl]+C が効かない、途中で中断できない。[Ctrl]+[Break] も効かない。
>
> break ON としても [Ctrl]+C が効かない。この時 [Ctrl]+[Break] を押すと
> command.com あたりのメモリ内容などをダーッと表示して止まる?

このmoreの挙動の問題の原因は、10#さん調整の FreeDOSのcommand.com でした。
MSDOS Playerでは FreeDOSのcommand.com を使用していて、それが干渉しているのか
このような変な挙動が出ていたようです。

MSDOS Player+MSDOS6.2 のcommand.comでは正常に処理出来ました。
一度確認したつもりだったのですが、再度確認して分かった次第です。
お騒がせして本当に申し訳ございませんでした。m(__)m


VTDOS+FreeDOSのcommand.com で検証してみた結果。
Dir | more
どのmoreでも止まらずに最後まで表示してしまう。
表示後、ハングアップしてしまう。
win98ME、NECDOS6.2、Toolsのmore だけはプロンプトに戻ってハングしない。

このような結果になりました。
してみると、MSDOS Player は、使えるだけましということになりますね。

      - No.10479 -    このTreeへ    コメント元:10453 へ [リストへもどる] soft

(10443) 10486MSDOS Player+FreeDOSのcommand.com で検証の補足など  投稿者:konno   2023/01/12(木) 01:51
    10479 番 konno さんへのコメント

MSDOS Player+FreeDOSのcommand.com で検証の補足をします。

more-k のIBMチェック&行桁の取得はローメモリを見ていますが
MSDOS Player+FreeDOSのcommand.com では V-TEXTなのに25行表示になります。
ローメモリの値が実際の行数を反映していないのかチェックしてみました。
数字の表示はむずいので、16進数の文字コードそのまま表示させてみました。
その結果は、"^]" = $1d = 29 でした。
あれえ?

行数はキチンと取得できているみたいなのに何故か24行? しか表示しないのです。
どうなってんねん!
Toolsのmoreがスペースキーでキチンと画面いっぱいに表示しているのも謎。
ソーサーで汗してみても全くわかりませんでした。(>_<)


ちなみに、ソーサーは MSDOS Player で動作します。
chej JP とか chej 03 とすると、ソーサーはグラフィックモードで動作します。
その場合、MSDOS Player では表示が見えなくなりますが、動作はしているようです。
上記のモード以外、つまり、V-TEXTモードならテキストモードで動作します。
DOSVAXJ3 ではグラフィックモードで動作しますが、MSDOS Player の方が使いやすいかな。
VTDOS では残念ながらソーサーは動かないようです。

      - No.10486 -    このTreeへ    コメント元:10479 へ [リストへもどる] soft

(10443) 10459Re^3: としきさんのmore.com  投稿者:としき   2023/01/04(水) 01:19
参照先:http://toshiki.la.coocan.jp/
    10448 番 konno さんへのコメント    コメント数 1

VTDOS黎明期に自分のmoreの話をしていたなんて、すっかり忘れていました。
ところで、

> 2009年の #4640 の10#さんの記事を引用すると

とあるのですが、私も、その後のバージョンアップで変更されていたとばかり思って
いました。ここで掲載されている、パッチを当てるアドレスはおそらく、その当時の
VTDOSのバージョンに依存していると思うんですよね。

> > とはいえ、この機種判別法、20世紀に教えてもらって、その当時の機種とOSでは
> > 問題なく動いていたわけですよ。うぅん、最新の機種判別法、どこかに公開されて
> > いるとうれしいんだけど。

この部分について、実家に来たついでに、書誌学というのか文献学というのか、ちょっと
調査してみました。そしてわかったこと。

・1997年4月にFGALSIGの石置き場に置いたのが最初のバージョン
・これを30BIOS/90BIOSの作者やユーザに評価していただいた。
・このバージョンに対し30/90BIOS作者のさかきけい氏より、PC-98判定にROMを見ているが
 ある種のハードを使っていると、その判定は失敗すると指摘をいただく。
 また、Int10Hを使う方法でPC-98とAT機を判定することが可能だが、これをFM-Rで使うと
 ハングアップする可能性あり。なので、まずFM-Rの判定を行ってからInt10Hを使うこと
 を推奨。
・1997年5月にmore.com正式版リリース(その後現在に至るまでバージョンアップなし)
 さかきけい氏の推奨された方法は採用せず
・その後、1997年9月ごろの追試では、上記more正式版で使っている方法 *だけ* では
 FM-RとATマシンを区別できず、一方でPC-98とFM-Rは区別可能だが、オアポケ3では
 案の定、Int10Hはハングアップ
 なので、現状では、まずPC-98かFM-Rであることをチェックし、それ以外ならAT機、
 というロジックになっている(はず)

といういきさつがあることがわかりました。
とりあえず、一番最初に参考にした、FM-RとPC-98の機種判別の資料は確保しました。
あとで、ちょっとじっくり眺めてみましょうかね。

      - No.10459 -    このTreeへ    コメント元:10448 へ [リストへもどる] soft

(10443) 10469MS-DOS Player と more  投稿者:konno   2023/01/06(金) 21:57
    10459 番 としき さんへのコメント

> > 2009年の #4640 の10#さんの記事を引用すると
>
> とあるのですが、私も、その後のバージョンアップで変更されていたとばかり思って
> いました。ここで掲載されている、パッチを当てるアドレスはおそらく、その当時の
> VTDOSのバージョンに依存していると思うんですよね。

そうかもしれないですね。
Windowsの更新が頻繁なのでコンパイラの仕様が変わっている可能性も考えられますよね。
コンパイラを更新したら動かなくなった、という話も多いですし。

その関連で、MSDOS Player の問題も同根なのではないかという気がしてきました。


MS-DOS Player for Win32-x64 謎WIPページ
http://takeda-toshiya.my.coocan.jp/msdos/

このページを読んでみたら、関連しそうな記事があったので引用します。

------------------------------------------------------
2016/6/8
COMMAND.COMでCOPYに失敗する問題、MORE.EXEでキーを受け付けない問題を修正しました。

MOREの方ですが、例えばTYPE (file) | MOREを実行すると、MORE.EXE上では、
ファイルハンドル複製/多重化の果てに、ファイルハンドル0番にstderrが割り当てられいて、
コンソール系のAPIが正しく動作しなくなっていたみたいです。
ファイルハンドル0番がattyで入力なデバイスでない場合は、コンソール系のAPIではなく、
_kbhit()や_getch()などの関数を使用するように修正しました。
これらの関数だと、ファイルハンドルの状態によらず、キーボードを読んでくれるようです。

また、コンソール系のAPIで使用するハンドルは、起動時にGetStdHandle()で取得したものを
ずっと使いまわしていましたが、ファイルハンドル複製/多重化の影響を受けて、
ハンドルが無効になってしまう場合があるようです。
そのため、コンソール系のAPIを使うたびに、GetStdHandle()で取得するように修正しました。

------------------------------------------------------

> MORE.EXEでキーを受け付けない問題を修正しました。

この EXE が16ビットかどうかはわからないですが
これって今回の問題と同じように思えます。
この時修正済みだったのに、また同じ問題が出てきたとしたら
コンパイラの関数の仕様が変わってしまったのではと疑ってしまいます。

BIOSキーの取得も試してみたのですが、コントロールコードは一切使えないみたいで
Toolsのmore で "Q" キーで中断終了が出来たということは、文字は入力できるのかも。

      - No.10469 -    このTreeへ    コメント元:10459 へ [リストへもどる] soft

(10443) 10535各環境で ver や としきmore を試してみたら  投稿者:konno   2023/01/28(土) 00:04
    10443 番 konno さんへのコメント    コメント数 1

ふと思いついて、リブレットのWinMEのDOS窓で、各種の ver や としきmore を試してみました。
その結果

Win98Me DOS窓
ver windows Millennium [Version 4.90.3000]
verc DosVer 8.00
more-t としきmore Insert system disk in drive. と表示して固まる

げげ、固まってしまった。(>_<)
まあ、DOS窓の中だけなので大事はなかったですが。

あらためて掲示板で 'としき more' を検索してみると

#6646: Re^4: Universal TCP/IP BootD で EMS!(長文) 投稿者: 文太   2015/08/22
>  としきさんのmore.comについてです。
>  いちおう、追試をしてみました。
>  XPでは正常動作します。

>  Win98のDOS窓と素DOS7.1(command prompt only)で、
>  またWinMEのDOS窓で、
>  "Operating System Not Found"というおかしなことをいってフリーズするようです。
>  テストは、>dir | c:\wk\more という具合にやりました。

どうやら Win95,98系のDOS窓では としきmore は固まってしまうようですね。
気になったので、他の環境でも試してみました。

Win10 DOS窓(ただし日本語表示出来ていない)
ver MS-DOS version 5.00.500
dir | more-t 正常に表示

VTDOS113
ver MS-DOS version 6.20
dir | more-t ---more--- のみ表示の永久ループが止まらない(^Cで止まる)

VTDOS114
ver MS-DOS version 6.20
dir | more-t ---more--- のみ表示

VTDOS121,122(USECMD=1)
ver 何も表示しないで終わる。
dir | more-t 何も表示しないで終わる。

WinNT系のDOS窓では正常に動きそうですね。
VTDOS113 で永遠のループとわ、トワノモア か、ロマンチックが止まらない(誰か止めて)
VTDOS はバージョンによって、内部コマンドなどにも対応していないのかなぁ。
何も表示しないで終わるのは、どういう動作なのだろう。

      - No.10535 -    このTreeへ    コメント元:10443 へ [リストへもどる] pre

(10443) 10537Re: 各環境で ver や としきmore を試してみたら  投稿者:文太   2023/01/28(土) 01:56
    10535 番 konno さんへのコメント    コメント数 1


>#6646: Re^4: Universal TCP/IP BootD で EMS!(長文) 投稿者: 文太
 僕は、このDOSでのネットワークが、そこそこ気になってはいます。
 DOSでLANできるのか、だとしたら、けっこうおいしいのじゃない、とか。
 いつか試してみますね。FDはないだろう、、、。
 完全忘却、100%の忘却。
 腐海整理への動機付け。

>>  としきさんのmore.comについてです。
>>  いちおう、追試をしてみました。"
>>  Win98のDOS窓と素DOS7.1(command prompt only)で、
>>  またWinMEのDOS窓で、"
>>  "Operating System Not Found"というおかしなことをいってフリーズするようです。
>>  テストは、>dir | c:\wk\more という具合にやりました。"

>どうやら Win95,98系のDOS窓では としきmore は固まってしまうようですね。
>気になったので、他の環境でも試してみました。

 お疲れ様です。とっても有意味な実験です。いつか、自分でもやってたろうと
思います。
 「としきmore」にそこまで執着しているわけでもないのですが、アスキーの、
MSの、moreはソースが読めません。「としきmore」は読めます。
 何が起こってるのでしょう?

 解析までお願いするのは、ずうずうしいだけだと思います。
 とりあえず、実験報告、ありがとうございました。

 moreはcopyとともに、フィルターの基本です。これを超えないで、どうする?
と、いちおうは思ってるんですよね。

 がんばれ! konno! あれ? 他力本願になってるの???

>ロマンチックが止まらない(誰か止めて)
 はい、お任せください、止めます。爆、爆、爆。

 VTDOSも調べるんですかぁ? あの人、きっつい人だからなぁ、、、。


      - No.10537 -    このTreeへ    コメント元:10535 へ [リストへもどる] soft

(10443) 10539Re^2: 各環境で ver や としきmore を試してみたら  投稿者:konno   2023/01/29(日) 01:01
    10537 番 文太 さんへのコメント    コメント数 1

>  「としきmore」にそこまで執着しているわけでもないのですが、アスキーの、
> MSの、moreはソースが読めません。「としきmore」は読めます。
>  何が起こってるのでしょう?

IBM系のマシンでPC98チェックをやるとマシンOSによって不具合が出るということですね。
IBMのローメモリチェックなら各機種で問題が出にくいと思ったわけです。
気がむいたら98チェックのルーチンを眺めてみたいと思います。

>  VTDOSも調べるんですかぁ? あの人、きっつい人だからなぁ、、、。

VTDOSは開発バージョンによって挙動が違うことが有るので、たまたまアイコンがあったのです。
シェアになる前後の違いもちょっと気になりますねぇ。1.23からだったか。

      - No.10539 -    このTreeへ    コメント元:10537 へ [リストへもどる] soft

(10443) 10541vtdos いつからいつまで?  投稿者:文太   2023/01/30(月) 03:11
    10539 番 konno さんへのコメント


 ここに付けさせていただきます。

#04361 konno 「XPでVTEXTのVZが使える!!!」
09/11/29 15:23

>2chで面白いものを見つけました。これはすごい!!

#07796 konno 「VTDOS1.53 の更新」
17/09/06 23:45

>VTDOS1.53 の更新がありました。
>内容を引用します。

---------------------------------------------
Version 1.53 リリースノート - 10♯ 2017/09/06 (Wed) 12:00:00
MSゴシックが選択されている場合、正常に入力出来ない文字があるため、
その場合強制的にTerminalを選択するようにしました(Vista以降)
Int21/56 RENAME FILE のファイル名重複時のエラーコードを修正しました。
------------------------------------------------

 関連と偶然があったので。
 たぶん、VTDOS1.53がVTDOSの最終ヴァージョンです。


      - No.10541 -    このTreeへ    コメント元:10539 へ [リストへもどる] soft