記事閲覧

− 野ざらし言 −

5298 LFN再整理(vtdos)

文太 2023/01/28(Sat) 18:28 [5293]へのコメント
 経験にてらしてみれば、別に特別なことではなかったですね。(※)
 vtdos環境で、dirしたら、どんな結果になる? そこでcommand.com 
(ver.6.20)は使われてませんね。

C:\WK\01>dir /?
  /X          このオプションは MS-DOS 形式以外のファイル名に対する短い名前を
              表示します。長い名前の前に短い名前を表示する点を除けば、
              /N オプションと同じです。短い名前がない場合は、ブランクに
              なります。

C:\WK\01>dir /X

2023/01/28  17:57                 0 012345~1.TXT 0123456789.txt

 ほら、ちゃんとLFNも両方出てる。cmd.exeですよ。で、なんのための
command.comか? DOSアプリはcmd.exeをコマンドインタプリタとしては
動けません。
 そして、command.comの内部コマンドはcmd.exeに飛ばされる。
 で、元々の話題のFコールは?

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

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

;	dx="c:\wk\01\01234567.txt",		;SFN ↓ rename success
;	di="c:\wk\01\0123456789.txt",		;LFN

	dx="c:\wk\01\0123456789.txt",		;LFN ↓ rename success
	di="c:\wk\01\0123456789000.txt",	;LFN

	ax=$5600, &i($21)		;Rename

*

 というわけで、LFNファンクのあるものは、やっぱり飛ばされる。★

-------------------------------------------------
INT 21 - DOS 2+ - "RENAME" - RENAME FILE
	AH = 56h
-------------------------------------------------

 は、下へ飛ばされる。下は上を含みますからね。

-------------------------------------------------
INT 21 - Windows95 - LONG FILENAME - RENAME FILE
	AX = 7156h
-------------------------------------------------


(※)経緯をおさらいすると、我々(konnoさんと僕)は、vtdosのDOS機能は
DOS ver いくつか? とか、command.comのverを dos ver F_call が返すぞ、
とかやっていたものだから、>dir のいわば自然な振る舞い(cmd.exeのそれ)の
ことを忘れてしまっていたのです。

 どうでもいいことだけど、種明かしをすると、

#5293 
>dir
a0123456789.txt		; safe LFN

 はインチキだったのです。いえ、報告内容にはインチキはありません。
ただ、ここを書いたとき、>dir の結果を写してはいなかった。でも、こうなる
のを知っていた。確かめてもいた。で、さっき眺めてて、あれ? dir も内部コマンド
なんですけど? command.comがLFNとかレポートできちゃっていいわけ? と常識を
取り戻したという次第です。

 というわけで、あったとしたら、新たな発見は、★の発見です。


追記:これも関連事項でした。そして、こういうことがすぐ連想でできないのが、
僕、文太です。

 ren コマンドも同じ話です。vtdos環境で、ren がLFNを扱えるのなら、それは
command.com の内部コマンドではないはずです。これも、cmd.exeに(と言っていい
のか分からないけど。だって、その実態はFコールですから−−Fコールの実態とは
何かを追っかけてるのが、Undocumented DOS 2nd, see int 21h の正体 = DOS
の「ヌード」みたいな実体。原書 p.266-, chap 6, "What is MS-DOS?"。Win32 system
でも、我々が気にする部分は同じ。というか同じように作られてる)飛ばされる。

 括弧の多い文章すいません。ふつう許されないと思います。難しい言葉でごまかすと
「意識の流れ」とか言います。

関連記事一覧ツリー (▼ を押すとツリー全体を一括表示します)

- 5278.一括リネームのテスト - めざら 23/01/20-15:12

返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

おなまえ :
Eメール :
タイトル :
メッセージ: 通常モード(推奨)  整形モード(非推奨)  preモード(空白再現)
※ プログラムコード等を含まない場合は,できるだけ通常モードをご利用ください。

参照先 :
暗証キー: (英数字で8文字以内) プレビューなし


- 以下のフォームから自分の投稿記事を修正・削除することができます -

処理 記事No. 暗証キー