[HOME]  [現在掲示板へもどる]   [新着50]  [最新100]  [全部表示 会議室風]  [全部表示 保存用]

番号順 最新100記事    FGALVZ  


11440/11403 DKM01189  鈴木康弘         Re^10:  今度はgrepで (^_^;)
( 0) 24/09/05 17:36 11438:鈴木康弘さんへのコメント コメント数:1
 すみません、完全解決というわけでなく、#11432でkonnoさんが報告された、

>  64k以上のファイルを編集中にコマンドラインに降りてコマンドを実行した時
> そのコマンドがエラーになった時に編集画面に戻ると、ファイルの内容が壊れるようです。

 の件です。
 ファイルの大きさにかかわらず、ファイルを開いておいて[ESC]Eなりでコマンドモードに降りて、DOSの外部コマンド(たとえばvmap)を実行させて、[ESC]でファイルに戻ると、ファイルが壊れた?ような表示になります。

 あわてずファイルを保存せずに閉じれば、ハードディスク上のファイルは壊れてないのですが。
 (これはVz1.59zだけの問題なのかは、僕は他のバージョンを持ってないので、わかりません。)


11441/11403 BQO00549  konno            Re^10:  今度はgrepで (^_^;)
( 0) 24/09/05 18:34 11438:鈴木康弘さんへのコメント コメント数:1
>  Vz1.59zのコマンドラインモードで、bkoさんのgrepは、めでたく正常に動作するようになりました。

おお、おめでとうございます。
私の方では再現できなかったですが、少ない情報で対応できるのは流石ですね。

>  鈴木は解決したけれど、konnoさんの方はもっと事態が複雑みたい?

原因は 私家版の "検索文字列の取得"マクロ、TAGL_F5.def でした。
これでコマンド文字列を取り込んでからコマンド実行するとファイルが壊れるようです。
マクロ中で Taglight.exe を呼び出しているのですが、大文字なのでスワップします。
その後小文字コマンド実行で異常になるようです。
似たような異常は NT系 XP でもありましたが、VZの不具合のように思います。
sw0 か、大文字コマンドなら問題は出ないようです。

これは武田さんにお願いするわけにもいかないですね。
VTDOSやDOSVAXJ3で出ないのは何か対策してるのかしら。
NT系で異常が出るのが個人的に気になっているのですが。
確かVTDOSは286CPU相当とか、DOSVAXJ3も16ビットDOSなので、その辺の違いかなぁ。


11442/11403 BQO00549  konno            Re^11:  今度はgrepで (^_^;)
( 0) 24/09/05 18:45 11440:鈴木康弘さんへのコメント コメント数:1
行き違いになってしまいました。(^^;

> >  64k以上のファイルを編集中にコマンドラインに降りてコマンドを実行した時
> > そのコマンドがエラーになった時に編集画面に戻ると、ファイルの内容が壊れるようです。

これは不正確でした。#11441 に書きましたが
大文字コマンドでスワップした後、小文字コマンド実行で異常になるようです。
似たような異常は NT系 XP でもありましたが、VZの不具合のように思います。
sw0 か、大文字コマンドなら問題は出ないようです。

>  (これはVz1.59zだけの問題なのかは、僕は他のバージョンを持ってないので、わかりません。)

なので、これは全てのVZで起こる現象だと思います。
VTDOSやDOSVAXJ3で出なかったので、何らかの対策法はあるかもしれません。


11443/11403 CTL00944  たけだ           Re^11:  今度はgrepで (^_^;)
( 0) 24/09/06 02:03 11441:konnoさんへのコメント コメント数:1
テスト版をこっそりアップロードしました。

"COMMAND /C (program) [arguments]"を実行するとき、
COMMAND.COMがあっても"program [arguments]"を直接実行するようにしています。

COMMAND.COMは何か色々特殊なことをやってそうなので、
COMMAND.COMを無駄に起動しないことで何か挙動が変わるかもしれません。

11444/11403 BQO00549  konno            Re^12:  今度はgrepで (^_^;)
( 0) 24/09/06 14:34 11443:たけださんへのコメント
> テスト版をこっそりアップロードしました。
> "COMMAND /C (program) [arguments]"を実行するとき、
> COMMAND.COMがあっても"program [arguments]"を直接実行するようにしています。

武田さん、ありがとうございます。

> COMMAND.COMは何か色々特殊なことをやってそうなので、
> COMMAND.COMを無駄に起動しないことで何か挙動が変わるかもしれません。

試してみましたが、異常が出るのは変わりませんでした。
sw0 か、大文字コマンドなら問題は出ないようなので、いっそ全部スワップさせてみました。
そうしたら異常が出なくなりました。新旧MS-DOS Player で同じ結果でした。

VZの問題まで気にかけていただき、ありがとうございました。


11445/11445 BQO00549  konno            k07v6m(暫定) (2024-09-06)
( 0) 24/09/06 17:37 コメント数:2
k07v6m(暫定) (2024-09-06)を更新しました。

k07v6m(暫定) (2024-09-06)
 ・フォルダの階層が深いと拡張子が消えるなどまだバグあり、注意。
 ・オプション OZ4 で小文字コマンドでもスワップ。NT系DOS窓やMS-DOS Player対応。
 ※NT系DOS窓やMS-DOS Playerでは大文字コマンドでスワップした後、小文字コマンド実行で異常になるようです。

 ダウンロード  vzkv6m.lzh ver1.60k07v6m (2024-09-06版 ) new!



●OZ FreeDOS(98)用98版で編集画面でのカーソルキー、ctrl+ファンクションキー等が
   使用できる様になります。そのかわり、漢字入力が出来なくなります。
    FreeDOS(98)用に新設。
 ・OZ1
 ・OZ2 ?
 ・OZ4 小文字コマンドでもスワップ。NT系DOS窓やMS-DOS Player対応。vzkv6m
 ※NT系DOS窓やMS-DOS Playerでは大文字コマンドでスワップした後、小文字コマンド
 実行で異常になるようです。OZ4 は単独で指定してください。

子プロセスのメモリを広く開けたい人は SW3 で お試しあれ(VTDOSでSW3の不具合はこれ?)
OZ0 と OZ4 を切り替えて大文字小文字 VMAP で見てみると面白いです。

VZKドキュメント  #txt:VZK.TXT

# DOCは毒だ、TXTにしとけ。(;_;)


11446/11403 DKM01189  鈴木康弘         Re^12:  今度はgrepで (^_^;)
( 0) 24/09/06 20:59 11442:konnoさんへのコメント コメント数:1
 #11440 の現象もどうやら、VzのオプションSWが1-3の時に起こるようです。
 SW0なら起こりません。

11447/11403 BQO00549  konno            vzibj ver1.59zのパッチ版
( 0) 24/09/06 22:56 11446:鈴木康弘さんへのコメント コメント数:2
>  #11440 の現象もどうやら、VzのオプションSWが1-3の時に起こるようです。
>  SW0なら起こりません。

SW0なら問題無いのですが、空きメモリが少なくなってしまいます。
大文字コマンドだけで運用するつもりでも、うっかり小文字コマンドを打ってしまうかもしれません。

試しに vz1.59z にパッチを当ててみたら、出来てしまいました。
vzibj ver1.59zのパッチ版です。
小文字コマンドでも強制的にスワップします。
変更部分は1バイトだけです。

メールで送りましたので、よろしかったら試してみてください。


310C:BB0C  80 3E 016E 00			cmp	data_360,0				; (310C:016E=1)
310C:BB11  74 13				je	realloc_gs_loc_2825	;★ goto swap	; Jump if equal
310C:BB13  80 3E 0288 00			cmp	data_425,0				; (310C:0288=0)
;310C:BB18  7E 0C				jle	realloc_gs_loc_2825	;★ goto swap	; Jump if < or =
xxxx:xxxx  EB 0C				jmp	short realloc_gs_loc_2825		; (BAE1)
      ↑
310C:BB1A  E8 F3D0				call	sub_693					; (AEED)
310C:BB1D  8B F8				mov	di,ax
310C:BB1F  56					push	si
310C:BB20  E8 00BC				call	sub_768			; (BBDF)
310C:BB23  5E					pop	si
310C:BB24  73 10				jnc	free_gs_loc_2826		; Jump if carry=0
310C:BB26			realloc_gs_loc_2825:					;  xref 310C:BB11, BB18


11448/11403 DKM01189  鈴木康弘         Re: vzibj ver1.59zのパッチ版
( 0) 24/09/07 07:01 11447:konnoさんへのコメント コメント数:1
> メールで送りましたので、よろしかったら試してみてください。

 お見事です。#11440 の現象は、外部コマンドが大文字小文字にかかわらず起こるので、正確にはkonnoさんの現象と違うと思っていました。
 でも、konno さんの修正vz159.comで、大文字でも小文字でも起こらなくなりました。
   

11449/11403 BQO00549  konno            Re^2: vzibj ver1.59zのパッチ版
( 0) 24/09/07 16:28 11448:鈴木康弘さんへのコメント
>  お見事です。#11440 の現象は、外部コマンドが大文字小文字にかかわらず起こるので、正確にはkonnoさんの現象と違うと思っていました。
>  でも、konno さんの修正vz159.comで、大文字でも小文字でも起こらなくなりました。

異常が無くなったようでよかったです。

外部コマンドに限らずVZのスワップは command.com のスワップを監視している前提と思われます。
Win95DOS窓でズレた時は高橋さんが対応してくれましたが、NT系になって完全にわからなくなったのでは。
なので VZがスワップする領域に command.com が来る場合もあって、それがVZにはわからない。
それで今回のような異常が出るのではないかと思います。

これで暫く運用して問題が無ければ他にも適用しようと思います。


# 無想転生を極めれば、コマンド―の動きも見切れる。なんちて (^^;


11450/11450 BQO00549  konno            MS-DOS Player 2024/9/7版更新
( 0) 24/09/08 16:50 コメント数:2
MS-DOS Player 2024/9/7版が更新されました。
以下更新内容です。

-----------------------------------------------------------
2024/9/7
プロセスの起動周りのコードを整理しました。
影響の大きそうな変更も入っていますので、テストにご協力お願いいたします。

「COMMAND.COM /C TYPE (file)」のように、子プロセスで内部コマンドを実行する場合、
A-Z:/CHDIR/PATH/SETは、MS-DOS Playerの内部処理で実行するようにしました。
子プロセスでこれらのコマンドを実行しても、呼び出し元に反映されないためです。
その他のコマンドは、COMMAND.COMを子プロセスとして起動して実行をします。
COMMAND.COMがない場合、system()でcmd.exeに渡してWindows側で処理しますが、
TYPEコマンドについては、INT 29hを通るように、MS-DOS Playerの内部処理で実行します。

「COMMAND.COM /C 実行ファイル」を起動しようとして、COMMAND.COMがない場合は、
実行ファイルを直接起動しますが、このとき新しいプロセスの第1・第2のFCBを更新して、
実行ファイルに指定された引数が入るように修正しました。

INT 10hやINT 21hで文字を画面に表示する際、INT 29hを経由して表示した場合に、
(INT 29hをフックしている場合のみ、INT 29hを経由するようになっています)
INT 29hを直に呼んだように、制御コードがシンボルとして表示される問題を修正しました。

起動時にCOMMAND.COMを探す際に、PATHおよびMSDOS_PATHに指定されたパスを
探索していなかった問題を修正しました。
過去にコードを整理していたときに、処理の順番を誤って変更してしまったようです。
-----------------------------------------------------------

更新ありがとうございます。
最近更新した COMMAND.COM 関連などを整理した感じですかね。

気が付いたことがあればここに書いていきます。


11451/11450 DKM01189  鈴木康弘         Re: MS-DOS Player 2024/9/7版更新
( 0) 24/09/08 17:51 11450:konnoさんへのコメント コメント数:1
 konnoさんのパッチなしのVzでは、#11440 の現象は変わってません。
 ファイルが壊れた?と最初はぎょっとした現象ですが、慣れたし、実害はないから、いいのですが。

11452/11450 BQO00549  konno            Re^2: メインメモリ上のファイルが壊れる?
( 0) 24/09/08 19:34 11451:鈴木康弘さんへのコメント
>  konnoさんのパッチなしのVzでは、#11440 の現象は変わってません。
>  ファイルが壊れた?と最初はぎょっとした現象ですが、慣れたし、実害はないから、いいのですが。

ちょっと試してみました。

1. 64k超を含む3つ以上のファイルを開いている場合	3番目のファイルは壊れない?

2. 1k程度のファイル1つの場合				壊れる

3. 1k程度のファイル3つの場合				全部壊れる

この結果から、メインメモリに有るファイルが壊れるようです。
 1.の3番目が壊れなかったのは、スワップ状態だったからと思われます。
なので、強制スワップは理にかなっていると思います。

これ、セーブすると壊れたままセーブされるので要注意ですね。
私は今までこの現象に気が付いていませんでした。(^^;
多分たまたま壊れたのだと思い無意識に破棄していたのだと思います。(^^;


11453/11450 BQO00549  konno            DEBUG や SYMDEB の中でヒストリー使える?
( 0) 24/09/08 20:32 11450:konnoさんへのコメント
今回の更新とは関係ないですが、気が付いた現象

常駐VZは DEBUG や SYMDEB の中でヒストリーやラインエディト機能が使えますが
MS-DOS Player では使えないようです。
最初から使えなかったのか疑問に思ったので、古い版でも確認してみました。

17年版も18年版も駄目でしたが、22年版(2022/12/30)あたりだったかな、
常駐VZで DEBUG や SYMDEB の中でヒストリー機能が使えました。

おお、と思いましたが、これ以降、どの版でも最新版でも使えるようになっていたのです。
PCを再起動させても同じでした。何故???

理由はわかりませんが、同じように使えないという人は、一度22年版(2022/12/30)あたりを
起動してみてはいかがでしょうか。多分私だけだとは思いますが。(^^;


11454/11454 BQO00549  konno            DOSVAXJ3 JP240909版 (2024/9/9)
( 0) 24/09/09 23:22 コメント数:2
DOSVAXJ3 JP240909版 (2024/9/9)が更新されました。
更新内容は
-----------------------------------------------------------
build JP240909 (2024/9/9)
Vz 常駐時のコンソール履歴でコマンドラインの文字列が正しく取得できていなかったのを修正しました。
画面サイズが変更になった際にキーボード押下状態をリセットするかどうかの設定[sdl] resetkeyboardstate を追加しました。
Linux 版で SDL_FlushIMString() で確定文字列を取得するよう修正しました。
-----------------------------------------------------------

[sdl]
resetkeyboardstate=false

とすれば ^KL の画面切り替えがCtrl押しっぱなしで連続で出来ます。\(^^)/ ヤッタ-
コマンドラインも、コマンドの表示が正常になったようです。
ありがとうございました。


11455/11454 DKM01189  鈴木康弘         Re: DOSVAXJ3 JP240909版 (2024/9/9)
( 0) 24/09/10 07:05 11454:konnoさんへのコメント コメント数:1
 うーん、#11390 に書いた、
日本語文をCtrl-Mで確定した直後は、Ctrlキーから一度指を離さないとCtrlキーが使えない
 という問題はなおってませんね。

 #11395 のkonnoさんによれば、もう軟式さんの手元ではなおってるらしいので、公開されるのを待ちましょう。

             日本語長文を書く時にはMS-DOS Playerを使ってる 鈴木


11456/11454 BQO00549  konno            Re^2: DOSVAXJ3 JP240909版 (2024/9/9)
( 0) 24/09/10 07:50 11455:鈴木康弘さんへのコメント コメント数:1
>  うーん、#11390 に書いた、
> 日本語文をCtrl-Mで確定した直後は、Ctrlキーから一度指を離さないとCtrlキーが使えない
>  という問題はなおってませんね。

あれぇ? もしかして違う問題だったとか。

2024/09/09  17:24           915,456 SDL.dll

この新しい DLL もコピーしていますよね?
それで [sdl] セクションに

#resetkeyboardstate = true
resetkeyboardstate = false 

これを追加しても駄目なら、作者様に報告するしかないですね。


11457/11445 BQO00549  konno            k07v6m(暫定) (2024-09-06)は問題あり
( 0) 24/09/10 14:55 11445:konnoさんへのコメント
k07v6m(暫定) (2024-09-06)は問題ありました。

DOS.ASM のTPAあたりを弄ったのが原因で、アセンブルなどで問題が出ました。
致命的な問題が有るので使用を中止してください。
ご迷惑をおかけして申し訳ないです。m(__)m

なお、VZ1.59z のパッチ版は問題ないです。


11458/11454 DKM01189  鈴木康弘         Re^3: DOSVAXJ3 JP240909版 (2024/9/9)
( 0) 24/09/10 17:57 11456:konnoさんへのコメント コメント数:1
 おお、

> resetkeyboardstate = false

 が必要でしたか。

 そのように dosvoxj.conf を書き直してみたけれど、やっぱりなおってないです。
 konno さんは、Ctrl-M で日本語文を確定した後、Ctrlキー押しっぱなしのままで、Ctrlキーが効くんでしょうか?

11459/11454 BQO00549  konno            Re^4: DOSVAXJ3 JP240909版 (2024/9/9)
( 0) 24/09/10 19:44 11458:鈴木康弘さんへのコメント
>  そのように dosvoxj.conf を書き直してみたけれど、やっぱりなおってないです。
>  konno さんは、Ctrl-M で日本語文を確定した後、Ctrlキー押しっぱなしのままで、Ctrlキーが効くんでしょうか?

すみません、私はマクロキーの話と思っていましたが、IMEの確定の話だったのですね。
私は IMEの確定に Enter キーを使っていたので気が付きませんでした。
Ctrl-M と Ctrl-Enter でも確定できるんですね。
これらのキーで確定した後は確かに Ctrlキー押しっぱなしでも英字が出力されてしまいますね。

確認してみたら、mingw-sdl2 フォルダの dosbox-x.exe の DOS/Vモードでは
IMEの確定後もシフト状態をキープ出来ました。

作者様にメールしてみます。
超多忙のため返事がもらえるかもわかりませんのでご了承のほどお願いいたします。


11460/11445 BQO00549  konno            k07v6n(暫定) (2024-09-10)※ 差替え版
( 0) 24/09/10 20:49 11445:konnoさんへのコメント
k07v6n(暫定) (2024-09-10)※ 差替え版です。
 ・k07v6m(2024-09-06)版に致命的な問題が有ったため差し替えました。
 ・フォルダの階層が深いと拡張子が消えるなどまだバグあり、注意。
 ・オプション OZ4 で小文字コマンドでもスワップ。MS-DOS Player対応。
 ※ MS-DOS Playerでは編集中小文字コマンド実行で異常になるようです。

 ダウンロード  vzkv6n.lzh ver1.60k07v6n (2024-09-10版 ) new!


11461/11461 BQO00549  konno            Win7PC復活の話
( 0) 24/09/11 18:05 コメント数:1
少し前に Win7PCを復活させた記事を書いたと思ったのに検索しても出てきません。
いよいよボケが酷くなったかと一瞬思いましたが、一縷の望みを託し野ざらし言へ
有りましたよ。野ざらし言#5600 で書いていました。2024/05/25 だったんですね。

過去ログに抜けが有るのではないかと疑って、 [全部表示 保存用]でコピペし
NIFSORTW.EXE で並べ替えました。Siさん、ありがとうございます。m(__)m

連続番号チェックマクロまで作ってチェックしたら、けっこう1発言抜けがあるのね。
1つだけなら SPAM かもしれないけど、5発言抜けがあって焦りました。
生ログに残ってましたが、自分で消した雑記だったので見なかったことにしました。(^^;
各掲示板にお宝情報が分散しているので、リンクメモみたいなのが欲しいですね。(^^;


11462/11454 BQO00549  konno            DOSVAXJ3 JP240909版 DLL 差替え
( 0) 24/09/11 19:24 11454:konnoさんへのコメント コメント数:1
軟式の作者様から DLLの差し替え版をいただきました。
以下メールの内容です。

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

 IME 確定時に Ctrl キーの押下状態を保持するよう修正してみました。
 64bit テスト版を下記よりダウンロードしてください。SDL.dll の差替となります。

https://www.nanshiki.co.jp/test/sdl_test.zip

 なお、掲示板に上記 URL を転載しても大丈夫です。

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

お忙しいところありがとうございます。DLLを差し替えたら動くようになりました。

> Ctrl-M で日本語文を確定した後、Ctrlキー押しっぱなしのままで、Ctrlキーが効くんでしょうか?

これがキチンと動くようになりました。
今回は DLLの差し替えだけなので、これが正式版となりそうです。


11463/11454 DKM01189  鈴木康弘         Re: DOSVAXJ3 JP240909版 DLL 差替え
( 0) 24/09/11 20:23 11462:konnoさんへのコメント コメント数:2
やった!

日本語文確定後も、Ctrlキー押しっぱなしで、往年のVzの動作をするようになりました。
これでDOSVAXJ3は完璧です!

(こまかい要望をもう少し言えば、ファイラーで英字を押した時に、自動的にWinIMEがオフになればいいな、というのもありますが、贅沢かも。)

もうMS-DOS Playerは使わなくなりそうな 鈴木


11464/11454 BQO00549  konno            Re^2: DOSVAXJ3 JP240909版 DLL 差替え
( 0) 24/09/11 21:59 11463:鈴木康弘さんへのコメント コメント数:1
> やった!
> 日本語文確定後も、Ctrlキー押しっぱなしで、往年のVzの動作をするようになりました。
> これでDOSVAXJ3は完璧です!

おめでとうございます。(^_^)

> (こまかい要望をもう少し言えば、ファイラーで英字を押した時に、自動的にWinIMEがオフになればいいな、というのもありますが、贅沢かも。)

え? 私のところでは自動的に OFF になっていますが。
FP+ FR+ FK+ FQ+ この辺のオプションは全部 + になっていますか。
そういう話ではないのかな。

> もうMS-DOS Playerは使わなくなりそうな 鈴木

そういえば、こちらは ファイラーで自動 OFF しなかったような気が。


11465/11461 BQO00549  konno            板塀への番号リンクも復活
( 0) 24/09/11 22:28 11461:konnoさんへのコメント
> 各掲示板にお宝情報が分散しているので、リンクメモみたいなのが欲しいですね。(^^;

そういえば、板塀への番号リンクも飛べなくなっていました。
直リンクになったので再チャレンジしたら出来ました。\(^^)/ ヤッタ-

板塀#4121  板塀を非フレーム化しました
#i4121  でも飛べます。(^_^)

?mode=article&amp;no=$2

このモードでないと番号ジャンプ出来ないんでした。(^^; ワスレテタ

ちなみに野ざらし言#5600#n5600 でも飛べます。
この辺の詳細な書式はテスト板 #t0067 #test67にあります。

# これでお宝取り放題だぜぃ



11466/11364 BQO00549  konno            「新着情報 」 v0.954 板塀への番号リンク復活
( 0) 24/09/11 22:41 11384:konnoさんへのコメント
「新着情報 」 v0.954 更新しました。
#11465 で板塀への番号リンク復活できたので、こちらも再チャレンジ。(^^;

    my $url2 = 'http://toshiki.la.coocan.jp/itabei.rss';
#    my $url2 = 'http://27-138-85-108.rev.home.ne.jp:9801/bbs/wforum.cgi?mode=newsort';

上のリンクを下のように変更しようとしてうまくいかず、挫折していましたが
ここはサイトの存在確認みたいなものなのね、上のままでOKなのでした。(^^;

番号リンクの方もやっぱり

?mode=article&amp;no=$2

このモードでないと番号ジャンプ出来ないんでした。(^^; ワスレテタ

これで直してめでたく番号にジャンプ出来るようになりました。

# やれやれだぜ


11467/11454 DKM01189  鈴木康弘         Re^3: DOSVAXJ3 JP240909版 DLL 差替え
( 0) 24/09/12 07:05 11464:konnoさんへのコメント コメント数:1
> え? 私のところでは自動的に OFF になっていますが。
> FP+ FR+ FK+ FQ+ この辺のオプションは全部 + になっていますか。


 ええ、それらのオプションは全部 + です。

 純粋 MS-DOS/V パーテイション環境では、FQ-でも、プレフィックスキーを押した時自動的にFEPがoffになってましたが、DOSVAXJ3では、FQ+でないと自動offにならないので、そう変えました。
(MS-DOS Playerは、FQ+にしても自動offにならないのが悲しい。)

 konnoさんは、ファイラーでも英字が自動的にIME offになりますか。うらやましい。(^_^;

11468/11454 DKM01189  鈴木康弘         Re^4: DOSVAXJ3 JP240909版 DLL 差替え
( 0) 24/09/12 07:38 11467:鈴木康弘さんへのコメント コメント数:1
 あっそうだ。
 Vzの編集モードからファイラーに移るとき、マクロで &j(0) を入れればいいんだ。

 ごそごそ..できたっ。
 これで完璧な DOSVAXJ3下Vz になりました。v(^_^)

11469/11454 DGF01024  めざら           [無題]
( 0) 24/09/12 07:57 11463:鈴木康弘さんへのコメント コメント数:1
参照先:http://mezala.la.coocan.jp/
> もうMS-DOS Playerは使わなくなりそうな

そういう言い方をしますか……
われわれは各種エミュレータを作者のご厚意で使わせてもらっているわけで,
いくら作者が自分が使うために作ったとしても,ちょっと敬意に欠けるかと.

今ごろ言うのもナニですが……
VZ v1.59z の使用期限は1993年の年内のはずで,ずっとモヤモヤしています.

使用期限はともかく,正規版を拡張する版を作成されている konno さんの板で
VZ での状況を相談するのであれば,環境を合わせる方が効率的だと思います.

オークションや蚤の市なら,まだ v1.6 を入手できる可能性はあるようですよ.


11470/11454 BQO00549  konno            Re^5: ファイラーで IME OFF
( 0) 24/09/12 16:35 11468:鈴木康弘さんへのコメント コメント数:1
まとレスです

>  Vzの編集モードからファイラーに移るとき、マクロで &j(0) を入れればいいんだ。
>  ごそごそ..できたっ。
>  これで完璧な DOSVAXJ3下Vz になりました。v(^_^)

解決できたならいいのですが、うちと何が違うのかわからないとモヤモヤします。
メールでいただいた vz.def vzfl.def で同じ環境でやっても問題は出ないようです。
・・・もしかして #11426> MS-DOS Playerのvz起動用バッチは
>     cd vz
>     del vztemp.$$$
>     msdos -n26 vzibmj *.*

VZ起動BATで、*.* を付けて起動するとファイラー画面になりますが
VZ起動前に WinIME がONの状態だと、ファイラーでも ONのままになりますね。
もしかしてこのことでしょうか。

*.* 無しで起動すれば、オープン窓が出て、Enterでファイラーですが、IMEはOFFになります。
*.* で起動したいなら、vzfl.def の先頭に &j(0) を入れればいいのかな?
あ、結果的には同じ対策か。(^^;


11471/11454 BQO00549  konno            Re: [無題]
( 0) 24/09/12 16:59 11469:めざらさんへのコメント
> そういう言い方をしますか……

私も心の中では色々思うこともよくありますが、公の場では控えるように心がけています。
場が荒れるのが嫌なので基本スルーの方針です。
まあ、自分もそうなので気にしない、ということですね。(^^;

> 今ごろ言うのもナニですが……
> VZ v1.59z の使用期限は1993年の年内のはずで,ずっとモヤモヤしています.

これは私もちょっとモヤモヤしました。
でも私にも覚えがあって・・・

とある店で製品版ではないコピーしたものをいただいてそのまま金も払わずに使ったことがあります。
相手の方はおそらく善意でやってくれたのでしょうが、それに甘えて使う私もおねだり君なのです。

まあ、VZ1.0のJ31移植版を生フロッピーにコピーできるのは世界に一人しかいないと思いますが。


11472/11454 DKM01189  鈴木康弘         Re^6: ファイラーで IME OFF
( 0) 24/09/13 07:14 11470:konnoさんへのコメント コメント数:1
 いえ、僕のvzibmj.defは、

56 \[CR] "ファイラー" (s)??{#O#m.} (2){(s&1)? #[}

と、編集モードからも\[CR](シフトEnter)でファイラーを立ち上げられるようにしています。
 IMEがonの編集モードからこれでファイラーを立ち上げると、IMEがonのままになってしまうのでした。

 なぜか[ESC]O、Enterと手で打てばIMEがoffになりますね。不思議。

ともかく#O#mの前に&j(0)を入れることにした次第です。


  DOSVAXJ3よりもMS-DOS Playerの方が、日本語入力自体はすこし軽快なのかなと、迷ってる 鈴木

11473/11454 BQO00549  konno            Re^7: ファイラーで IME OFF
( 0) 24/09/13 17:46 11472:鈴木康弘さんへのコメント
>  いえ、僕のvzibmj.defは、
> 56 \[CR] "ファイラー" (s)??{#O#m.} (2){(s&1)? #[}
> と、編集モードからも\[CR](シフトEnter)でファイラーを立ち上げられるようにしています。

なるほど、マクロで直接ファイラーに行っているのですね、それなら納得です。

>  IMEがonの編集モードからこれでファイラーを立ち上げると、IMEがonのままになってしまうのでした。

この場合はやはりマクロでOFFにするしかありませんね。

>  なぜか[ESC]O、Enterと手で打てばIMEがoffになりますね。不思議。

VZのFEP制御がIMEでキチンと効いているからですね、VTDOSもそうですが、対応してくれた作者様に感謝です。

> ともかく#O#mの前に&j(0)を入れることにした次第です。

これが正解だったですね。

>   DOSVAXJ3よりもMS-DOS Playerの方が、日本語入力自体はすこし軽快なのかなと、迷ってる 鈴木

そうなんですか、長所短所も三者三様ですね。


11474/11403 BNY00646  shadow           Re: vzibj ver1.59zのパッチ版
( 0) 24/09/13 20:31 11447:konnoさんへのコメント コメント数:1
パッチ情報をもとに高橋版とk07s5にパッチをあててみました。
各々のオリジナル版とバイナリデータそれなりに修正したソースをアセンブルしたものを比較したら修正箇所はパッチ情報と同じになったので・・・大丈夫のような?動作確認したら現象はなくなりました。
オプション化をチャレンジしましたが私には無理でした。
あっ、先の不具合が出なかった報告はSW0だったからでした。


11475/11403 BQO00549  konno            Re^2: vzibj ver1.59zのパッチ版
( 0) 24/09/14 00:00 11474:shadowさんへのコメント コメント数:1
> パッチ情報をもとに高橋版とk07s5にパッチをあててみました。
> 各々のオリジナル版とバイナリデータそれなりに修正したソースをアセンブルしたものを比較したら修正箇所はパッチ情報と同じになったので・・・大丈夫のような?動作確認したら現象はなくなりました。

おお、勇者が現れた! \(^^)/ ヤッタ-
パッチ位置を探すのはかなり大変でした。ほとんど目視。(^^;
DEBUG の使い方も忘れていて、参考書を見てもさらっとしか書いてなくて。(;_;)
なので、おお、出来る人が現れた! と思ったのでした。(^^;

> オプション化をチャレンジしましたが私には無理でした。

チャレンジする心と実際にやってみるのが大事だと思います。
私も最初はパッチ当てが精いっぱいだったので、キーワードを検索してコメントから始めました。
やってることは VZマクロも BASIC もみんな同じですね。(^^;

> あっ、先の不具合が出なかった報告はSW0だったからでした。

そうだったのですか、私は Win11でもちゃんと動いているんだなぁ、などとぼーっと見てました。(^^;


11476/11025 CXB00940  としき           Re: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/14 13:37 11030:konnoさんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
> 今年は一念発起して、全ログ検索ルーチンをメールで送りつけることにしました。(^^;

めざらさんと同じく、気が向いたら、ということだったのですが。
まだまだ気は向いていないのですが、とりあえず導入する方向だ、ということだけは
明確にしておきましょう。とはいえ、最短で今年の11月ごろ、実際には数年先かも。

そもそも、なぜデフォルトでは全ログ検索になっていないのか、というところも妄想
してしまって。CGIの作り方として、その機能をつけないほうが楽、ということは当然
あるでしょう。原作者としては、もしかしたらそれだけしか考えていなかったかも
しれない。
だけど、全ログを舐めるって、結構なマシンパワーが必要なんですよ。
そして、うちで以前使っていた自宅サーバは、ものすごく貧弱。
とてもそんな機能を具備できないほど。
でも、現在使っている、もしかしたら暫定かもしれないサーバなら、十分対応可能。
ということで、理由のひとつは消えてしまいました。

あと、原作者の方のいろいろな発言やらインタビュー記事なんかも読んだことがあり
ますが、結構、利用者のことをいろいろと考えてコードを書いていらっしゃる。だから
利用者のほうでも妄想の余地があるといいますか。
例えば、もう何年も原作者のサイトは見に行っていませんが、かなりPerl5が普及した
時代になってもPerl4用のコードを提供していた。これも、Perl4しか使えない利用者
がまだまだいるから、ということでした。
そういう方が分割された過去ログごとに検索するというコードを書かれているのです
から、これは何らかの意図があってわざわざそうしているのではないか、と妄想する
のはたやすいこと。
なのでここは無批判に原作どおり、というのもありといえばありのはず。

とはいえ、上記のとおり、うちの板塀もそのうち導入する方針には舵を切ったわけ
ですよ。ま、期待せずにお待ちください、ということで。



ところで、過去ログの検索がらみでこちらの掲示板に一つ要望。
過去ログを開いたデフォルトで、検索ボタンの後ろというか右側、なんか改行が欠けて
いるような感じ。さらにそこから何か検索した場合、やはり同じところの改行が欠けて
いるので、最初に見つかった書き込みのタイトルがくっついてしまっている。
これはうまくないと思う。

あ、でも、これの試験をしているときに気がついた。
私、メインの現行ログで検索する時は全ログ検索で全く問題ないことが多いけれど、
少なくとも自分の板塀の検索においては、過去ログ検索のときはそのログだけを対象
にした検索になっていてほしいみたい。う〜ん、検索ルーチンは1個だけだからなぁ。
フラグ一つで何とかなるとは思うけど、この機能の実装はなんか面倒かも。


11477/11025 BQO00549  konno            Re^2: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/14 19:38 11476:としきさんへのコメント コメント数:1
> まだまだ気は向いていないのですが、とりあえず導入する方向だ、ということだけは
> 明確にしておきましょう。とはいえ、最短で今年の11月ごろ、実際には数年先かも。

おお、希望の光が。よろしくお願いします。m(__)m

> だけど、全ログを舐めるって、結構なマシンパワーが必要なんですよ。
> そして、うちで以前使っていた自宅サーバは、ものすごく貧弱。
> とてもそんな機能を具備できないほど。

確かに古いPCサーバーでは負荷が大きすぎるかもですね。

> でも、現在使っている、もしかしたら暫定かもしれないサーバなら、十分対応可能。
> ということで、理由のひとつは消えてしまいました。

おお、わくわく (^_^)

> とはいえ、上記のとおり、うちの板塀もそのうち導入する方針には舵を切ったわけ
> ですよ。ま、期待せずにお待ちください、ということで。

首と気を長くしてお待ちしてまーす。(^_^)

> 過去ログを開いたデフォルトで、検索ボタンの後ろというか右側、なんか改行が欠けて
> いるような感じ。さらにそこから何か検索した場合、やはり同じところの改行が欠けて
> いるので、最初に見つかった書き込みのタイトルがくっついてしまっている。

あ、ほんとだ、とりあえず暫定的に直しました。m(__)m
色々詰め込んでいるのでどこが悪いか特定に時間が掛かります。(^^;

> 私、メインの現行ログで検索する時は全ログ検索で全く問題ないことが多いけれど、
> 少なくとも自分の板塀の検索においては、過去ログ検索のときはそのログだけを対象
> にした検索になっていてほしいみたい。う〜ん、検索ルーチンは1個だけだからなぁ。
> フラグ一つで何とかなるとは思うけど、この機能の実装はなんか面倒かも。

うちのところでは現行ログの検索が全ログで、過去ログは各ログの検索になっているようです。
検索ルーチンが元々別になっていたような気が。


11478/11403 BQO00549  konno            SWAPバッチの効果検証
( 0) 24/09/15 16:36 11475:konnoさんへのコメント コメント数:1
色々な環境で SWAPバッチの効果を確認してみました。
64k超のファイル編集中下のコマンドをTAGLF5でコピーしコマンドラインに降りて張り付け実行後戻る。
grep ##1.6 text.asm

環境		VZオリジナル	VZkv6n VZ159pach
MS-DOS Player	NG		OK
VTDOS121	NG		OK		この前後の違いが気になる
VTDOS122	NG		OK		としきさんの環境
VTDOS123	OK		OK		シェアウエア化

古いVTDOSの環境を上の理由で残しているので試してみた結果です。
古いVTDOSは MS-DOS Player と同じような結果になっています。
VTDOSがシェアウエアになる時にこの辺が修正されたようです。

#5084: VTDOS1.23がシェアウエアに  の記事で

> 1.22まであった4Ah のメモリの問題は出なくなったようですね。

と書いているので、ここの問題だったのかもしれませんね。

想像ですが、VTDOSも MS-DOS Player も WinNT系をベースに開発したのかなぁと。
10#さんはこの問題を解決するのに苦労して、それでシェアウエアにしたとかね。
あくまで想像です。(^^;


11479/11025 CXB00940  としき           Re^3: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/15 19:17 11477:konnoさんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
> おお、希望の光が。よろしくお願いします。m(__)m

うん、まぁ、暗がりの中なら線香花火の火でも光には間違いない。
#ぽとっ

> > いるので、最初に見つかった書き込みのタイトルがくっついてしまっている。
> あ、ほんとだ、とりあえず暫定的に直しました。m(__)m

直っているのは確認できました。が。
暫定的、なんですか?

> 色々詰め込んでいるのでどこが悪いか特定に時間が掛かります。(^^;

詰め込みが直ったときが恒久的、ということなんでしょうか。
とりあえず、うちの板塀に全ログ検索が導入するよりも早く恒久化できることと
思います。ということにしておけば、konnoさんが詰め込みを直すまで、うちに
全ログ検索を導入せずに済む。よし、この方向で行こう。

> うちのところでは現行ログの検索が全ログで、過去ログは各ログの検索になっているようです。

たぶん現状でこの掲示板の挙動はkonnoさんの想定したとおりのものなのでしょう。
すると、それは私の想定した挙動ではない。
例えば、過去ログ0025とかで「八王子のラーメン」と検索すると、過去ログ0001の
発言が引っかかります。一方で、過去ログ0002で「vtdos」と検索しても、なにも
引っかからない。
あるいは「morek」という語句を、過去ログの0026、0025、0024で検索した場合の
挙動なんかをみると、なんか、検索を始めたログよりも過去方向にはたどるけれど
未来方向にはたどらない、という挙動のように見える。
私が自分のところに実装するなら、こういう挙動にはならないようにしたい、という
のが希望です。

どうもあれだ、私が溺れるというか大量すぎると認識してしまう情報量の閾値は、
konnoさんよりもえらく小さい模様。だから、いろいろなところでこまめに区切り
たい。例えば、掲示板のトップというかデフォルトで最初に表示されるところでも、
konnoさんはページ送りがないほうがいい人だけど、それだと私には情報量が多すぎて
使いづらい。だから、自分のところでは細かく区切って次ページにページ送りにして
いるのも、もしかしたらそういった感覚が影響しているのかも。

11480/11025 BQO00549  konno            Re^4: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/16 00:31 11479:としきさんへのコメント コメント数:2
> うん、まぁ、暗がりの中なら線香花火の火でも光には間違いない。
> #ぽとっ

何か落ちたような気もするけど、きっと雨ですね。(^^;

> とりあえず、うちの板塀に全ログ検索が導入するよりも早く恒久化できることと
> 思います。ということにしておけば、konnoさんが詰め込みを直すまで、うちに
> 全ログ検索を導入せずに済む。よし、この方向で行こう。

特に問題なさそうなので、正式版ということにします。(^^;
(バグってたらその時はその時、良い加減です)

> あるいは「morek」という語句を、過去ログの0026、0025、0024で検索した場合の
> 挙動なんかをみると、なんか、検索を始めたログよりも過去方向にはたどるけれど
> 未来方向にはたどらない、という挙動のように見える。

うう、うちのはそういう挙動になっていましたか、サーチルーチンは共通だったんですね。
直すならやっぱりフラグかなんかですかね。直す気はないけど。(^^;
うーん、でもとしきさん方式も良いかも。ちょっと迷ってきてます。(^^;

> どうもあれだ、私が溺れるというか大量すぎると認識してしまう情報量の閾値は、
> konnoさんよりもえらく小さい模様。だから、いろいろなところでこまめに区切り
> たい。例えば、掲示板のトップというかデフォルトで最初に表示されるところでも、
> konnoさんはページ送りがないほうがいい人だけど、それだと私には情報量が多すぎて
> 使いづらい。だから、自分のところでは細かく区切って次ページにページ送りにして
> いるのも、もしかしたらそういった感覚が影響しているのかも。

好みは人それぞれなので、個人の掲示板なら自分優先でいいと思います。
でもそれで他の人が使いづらくて来てくれなくなったらやっぱり困るなぁ。
ということで、結構いつも自他のバランスは考えてはいるつもりです。


11481/11025 CXB00940  としき           Re^5: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/16 18:01 11480:konnoさんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
> 特に問題なさそうなので、正式版ということにします。(^^;

ありゃりゃん。
それはおめでとうございますというべきか、残念というべきか。
私の方も可能な範囲で頑張りましょう。

> 好みは人それぞれなので、個人の掲示板なら自分優先でいいと思います。
> でもそれで他の人が使いづらくて来てくれなくなったらやっぱり困るなぁ。
> ということで、結構いつも自他のバランスは考えてはいるつもりです。

そうなんですよね、そのバランスが結構大変というか。
ネットなどで世の中の大勢がわかる問題ならまだしも。
自分の感性だけをよりどころにすると、私は世間の少数派であることが多い。
という自覚はあります。
いまだにDOSアプリ(エディタだけではなく)を使っていたりするし。
でも改善する意欲はあまりない。
ん〜、なんだろねぇ。


11482/11025 BQO00549  konno            Re^6: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/16 22:40 11481:としきさんへのコメント
> 私の方も可能な範囲で頑張りましょう。

よろしくお願いします。(^^;

> いまだにDOSアプリ(エディタだけではなく)を使っていたりするし。
> でも改善する意欲はあまりない。
> ん〜、なんだろねぇ。

これだけ長くやっているともう自分の環境は固定してますからねぇ。
でも最近は、昔取った杵柄というか、VZをまたやり出す人達も出てきてますし。
そんな時に提供できる情報は山のようにあるわけですよ。
でも有りすぎて探す手間の方が掛かってしまったりして。(^^;

その探す手間を減らし、素早く検索出来るようにしたくて全ログ検索を考えたわけです。
記事全文の改行を削除してワードが分断されないようにもしてみました。

他の掲示板の過去ログの収集を始めたのも、情報検索のためです。
他板への番号自動リンクも、新着情報もそのために更新しているといってもいいかな。
ということで、私はこれからも改造を進めていくつもりです。

# なんとかうまいことまるめ^H、纏められたかな。(^^;;


11483/11403 BQO00549  konno            異常は MCB未チェックが原因だった!?
( 0) 24/09/17 18:21 11478:konnoさんへのコメント コメント数:1
調べていたらMCBの未チェックが原因だったようです。
#4999 で10#さんが当時の不具合の原因を特定してくれていました。
DOS.ASM の後ろの方

checkmcb proc
	push	ax
	dec	ax
	mov	es,ax
	mov	al,es:[mcb_id]
	cmp	al,'M'
_ifn e
	cmp	al,'Z'
	jne	chkmcb9
_endif
	mov	ax,cs
	cmp	byte ptr cs:os_win,5	; ★NTなら必ずMCBチェック
	je	winnt5			;
	tstw	es:[mcb_psp]		; ## この2行が		2010-2-10
	jz	chkmcb9			; ## 不要と思われる	by 10#
winnt5:	cmp	es:[mcb_psp],ax		; MCB チェック
chkmcb9:pop	es
	ret
checkmcb endp

## が10#さんのパッチでコメントになっています。
★ が私の入れたルーチンで、NT系DOS窓なら ## の2行を飛ばすようにしました。

今回は ★印部分を、OZ32 のオプションに変更してみました。

	mov	ax,cs
	test	byte ptr cs:opt_zpc,32	; ##k 240917  Oz32なら MCB chek
	jnz	winnt5			;
;	cmp	byte ptr cs:os_win,5		; NT
;	je	winnt5				;
	tstw	es:[mcb_psp]	; ## この2行が		2010-2-10
	jz	chkmcb9		; ## 不要と思われる	by 10#

試してみると、この ## の2行を飛ばすようにすると swapパッチと同じく正常になりました。
おそらくNT系のcommand.com がメモリを使っても VZは検知できないということだと思います。
だから必ずMCBチェックをするか 必ず swapすることで正常になるのだと思います。

当時の流れを見ると

2010/01/22  23:15           216,608 VTDOS.EXE	VTDOS121  NG
2010-2-10	VZの問題原因究明
2010/02/21  02:29           212,512 VTDOS.EXE	VTDOS122  NG
2010/03/02  19:26           244,768 VTDOS.EXE	VTDOS123  OK

2010-2-10 に VZの問題原因究明出来てもすぐには解決できませんでした。
10#さんでも問題解決にそうとう時間が掛かったのだと想像します。
この当時は私はこの話を全然理解できていなかったですね。(^^;


11484/11484 BQO00549  konno            DOSVAXJ3 (2024/9/18)版更新
( 0) 24/09/18 20:54 コメント数:1
DOSVAXJ3 (2024/9/18)版が正式に更新されました。
更新内容は

-----------------------------------------------------------
build JP240918 (2024/9/18)
Windows 版で IME の入力文字列を Ctrl-M や Ctrl-Enter で確定すると Ctrl キーが離された状態になってしまうのを修正しました。
日本語環境から VESA のファンクション(int 10h ax=4f02h)を使ってビデオモードを変更した場合に画面表示がおかしくなっていたのを修正しました。
-----------------------------------------------------------

正式版が出て、動作もばっちりです。
32ビット版も更新されたので、32ビット版Win7のPCでも使えそうです。

ありがとうございました。


11485/11403 CTL00944  たけだ           Re: 異常は MCB未チェックが原因だった!?
( 0) 24/09/19 00:24 11483:konnoさんへのコメント コメント数:1
今晩のMS-DOS Playerの更新で、INT 21h, AH=4Ahに対策を入れてみました。
DOS 4.0の挙動にあわせています。
これでVZの問題が解決しているのではないかと思います。。。

11486/11403 BQO00549  konno            Re^2: 異常は MCB未チェックが原因だった!?
( 0) 24/09/19 01:15 11485:たけださんへのコメント
> 今晩のMS-DOS Playerの更新で、INT 21h, AH=4Ahに対策を入れてみました。
> DOS 4.0の挙動にあわせています。
> これでVZの問題が解決しているのではないかと思います。。。

武田さん、ありがとうございます。
オリジナルVZで確認してみましたが、常駐、非常駐とも問題無しでした。
これでパッチVZの需要は無くなりましたね。(^^;

本当にありがとうございました。


11487/11487 BQO00549  konno            MS-DOS Player 2024/9/19版更新
( 0) 24/09/19 01:37 コメント数:2
MS-DOS Player 2024/9/19版が更新されました。
#11485 で作者様が告知してくれたのですが、内容は

-----------------------------------------------------------
2024/9/19
INT 21h, AH=4Ahの処理を修正しました。
指定したメモリブロックのサイズの変更に成功した場合、そのメモリブロックのオーナを
呼び出し元のプロセスに変更するようにしました。
サイズの変更に失敗した場合も、可能な限り最大のサイズに変更するようにしました。

DOS 4.0のソースを見る限りでは、以下のような挙動になっているようです。

後続の空きメモリブロックと結合することで、可能な限りサイズを大きくする。
指定のサイズ以上になった場合は、指定のサイズまでメモリブロックを分割して、
(元オーナが他のプロセスだろうが、空きメモリブロックだろうが、お構いなしに)
そのメモリブロックのオーナを自プロセスにする。
サイズが足りない場合は、どこまでサイズを大きくできたかをBXに返す。
このとき、メモリブロックを元のサイズに戻したりはしない。

VZエディタで、開放したメモリブロックのサイズを変更するような処理があるらしく、
これで動作が改善しているのではないかと思います。

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

掲示板の記事で書いていた VZの 4Ahの問題を修正してくれたようです。
オリジナルVZで確認してみましたが、常駐、非常駐とも問題無しでした。
これでパッチVZの需要は無くなりましたね。(^^;

本当にありがとうございました。


11488/11487 DKM01189  鈴木康弘         Re: MS-DOS Player 2024/9/19版更新
( 0) 24/09/19 07:06 11487:konnoさんへのコメント コメント数:1

 おかげさまで、#11440 に報告した異常は、最初の1回だけ出ますが、2回目からは無事、出なくなりました。


 ずうずうしい?要望を言えば、MS-DOS Player 上の Vz では、

 かな漢字変換がONの状態で、[ESC]などのプリフィックスキーを押した直後のキーは、自動的にIMEがオフになってほしい
 (Vz用語で、隠しオプションFQ+が効いてほしい)

という点を実現していただけると、ありがたいですが...。

11489/11484 DKM01189  鈴木康弘         Re: DOSVAXJ3 (2024/9/18)版更新
( 0) 24/09/19 07:17 11484:konnoさんへのコメント コメント数:1
 #11462 にアナウンスされたDLLの正式な公開ですね。ありがとうございます。

11490/11487 BQO00549  konno            Re^2: MS-DOS Player 2024/9/19版更新
( 0) 24/09/19 17:30 11488:鈴木康弘さんへのコメント コメント数:1
>  おかげさまで、#11440 に報告した異常は、最初の1回だけ出ますが、2回目からは無事、出なくなりました。

切り替えた最初に異常が出るのはメモリキャッシュの影響ではないかと疑っています。
それ以降異常が出ないなら問題ないと思います。

>  かな漢字変換がONの状態で、[ESC]などのプリフィックスキーを押した直後のキーは、自動的にIMEがオフになってほしい
>  (Vz用語で、隠しオプションFQ+が効いてほしい)
> という点を実現していただけると、ありがたいですが...。

これ、私も欲しいかも。(^^;
今までは VTDOS で WinIMEで書き込み出来ていたので特に感じなかったのですが
DOSVAXJ3 が出てきて WinIMEが使えるとなると、つい比べてしまうようになって。(^^;
CKWV や SDL.DLL などを使えば出来そうな気はしますが、作者の意向もありますし。

個人的には MSDOS6.2の command.comでVZが常駐使用出来たらいいなと思います。
PCDOS7 でVZが常駐使用できなくて、VZ側にパッチ当てたのがあったと思うのですが
その情報がどこにもなくて、どなたかいただけたら嬉しいなと思うんですが
それこそずうずうしい話ですよね。


11491/11484 BQO00549  konno            Re^2: DOSVAXJ3 (2024/9/18)版更新
( 0) 24/09/19 21:18 11489:鈴木康弘さんへのコメント
>  #11462 にアナウンスされたDLLの正式な公開ですね。ありがとうございます。

test版が64ビット版だけだったので、正式版が出てうれしいです。
正式な更新って結構な手間がかかると思いますので作者様多忙の中で上げてくれたのは
本当にありがたいことです。


11492/11487 CTL00944  たけだ           Re^3: MS-DOS Player 2024/9/19版更新
( 0) 24/09/20 00:48 11490:konnoさんへのコメント コメント数:1
VZはIMEの制御のためにどのような処理をしていますでしょうか?

現状、MS-DOS Playerは、キーボードBIOSのINT 16h, AX=1300hと、
ATOK割り込みのINT 6Fh, AH=00h-05h,0BhでIMEのオン・オフを制御しています。



11493/11487 BQO00549  konno            Re^4: MS-DOS Player 2024/9/19版更新
( 0) 24/09/20 03:20 11492:たけださんへのコメント コメント数:2
> VZはIMEの制御のためにどのような処理をしていますでしょうか?

すみません、私は VZのFEP制御の仕組をあまり理解してないので正確には答えられません。

> 現状、MS-DOS Playerは、キーボードBIOSのINT 16h, AX=1300hと、
> ATOK割り込みのINT 6Fh, AH=00h-05h,0BhでIMEのオン・オフを制御しています。

ATOK割り込みのINT 6Fh は J3100 のみで使われているようです。
INT 16h, AX=1300h で WinIME が OFF になるのはVZマクロで確認できました。

VZは MS-KANJI API か $IAS で FEP制御しているようですが
keyibm.asm の IAS の部分は

;--- FEP control for DOS/V ---

IFDEF DOSV
	fpctr	ias

	public	ias_on
ias_on	proc
;ias_on:
	push	ax
	mov	bx,1
	bios_v	1Dh,0		; mov ax,1D00h  INT10h  VIDEO - DOS/V - SHIFT STATUS LINE CONTROL
	bios_k	14h,0		; mov ax,1400h  INT16h  DOS/V - SHIFT STATUS DISPLAY CONTROL
	bios_k	13h,1		; mov ax,1301h  INT16h  al,01h get shift status
	pop	ax
	mov	dl,al		; Return:  DX = current shift status
	bios_k	13h,0		; mov ax,1300h  INT16h  al,00h set shift status
	ret
ias_off:
	bios_k	13h,1		; mov ax,1301h  INT16h  al,01h get shift status
	push	dx		; Return:  DX = current shift status
	and	dl,01000000b		; ##157.152
	bios_k	13h,0		; mov ax,1300h  INT16h  al,00h set shift status
	pop	ax
	ret
ias_on endp
ENDIF

このようになっていますが、全体の流れがわからないので、これで ON/OFF できるのかわからないです。
[ESC] などのプレフィックスキーを押した時に IME が OFF になって欲しいのです。
その後自動的に ON になってくれるといいのですが。

全体の流れを調べてみます。


11494/11487 CTL00944  たけだ           Re^5: MS-DOS Player 2024/9/19版更新
( 0) 24/09/20 10:48 11493:konnoさんへのコメント コメント数:1
ありがとうございます。
ias_onを呼ぶとき、ALに指定する値が気になります。
MS-DOS Playerは、現状ではbit7でオンオフを判定していますが、
DOSVAXJ3はbit0も見ているようです。
今晩辺り、DOSVAXJ3に処理を合わせた版を出してみます。


11495/11487 BQO00549  konno            Re^6: MS-DOS Player 2024/9/19版更新
( 0) 24/09/20 15:03 11494:たけださんへのコメント コメント数:1
> 今晩辺り、DOSVAXJ3に処理を合わせた版を出してみます。

ありがとうございます。

keyibm.asm の IFDEF J31 を IFDEF DOSV にすり替えて INT ATOK を使うVZを試してみました。
IME の ON/OFF は出来ましたが、プレフィックスキーの保持が出来ません。
具体的には、[ESC] を押すと プレフィックス表示になりますが、一瞬で消えてしまいます。
IME OFF で [ESC] を押すとプレフィックスが保持されますが、再度 [ESC] を押すと IME ONになります。
その辺は弄ってないので、IMEが何かしてるのかな。うーむ、わからん。


11496/11487 CTL00944  たけだ           Re^7: MS-DOS Player 2024/9/19版更新
( 0) 24/09/21 00:14 11495:konnoさんへのコメント コメント数:1
取り敢えず新バージョンを出してみました。

INT 16h, AH=13hと、ATOKのINT 6Fhの処理を、DOSVAXJ3に寄せています。
また、$IBMAFNT/$IBMADSP/$IBMAIASが組み込まれているふりをするようにしてみました。


11497/11487 BQO00549  konno            Re^8: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 02:15 11496:たけださんへのコメント コメント数:1
> 取り敢えず新バージョンを出してみました。

ありがとうございます。試してみました。

> INT 16h, AH=13hと、ATOKのINT 6Fhの処理を、DOSVAXJ3に寄せています。
> また、$IBMAFNT/$IBMADSP/$IBMAIASが組み込まれているふりをするようにしてみました。

INT 16h, AH=13h の方は機能していないようです。
> INT 16h, AX=1300h で WinIME が OFF になるのはVZマクロで確認できました。
これは同じく効いているようですが。
機能の詳細を教えてもらえるとありがたいです。

ATOKのINT 6Fhの方は、VZATOK版ではある程度うまく動くようになりました。
ただ、編集モード以外で [ESC] を押すと IME が ONになってしまうのが想定外でした。
私の説明が不正確だったせいで、IMEを自動復帰させているように思います。

これはVZ側が FEPの状態を覚えていて、必要に応じて VZが ON/OFF させているのでした。
なので、[ESC] を押すと IME が OFFになるようにして、その後はVZが制御する形がいいと思います。


VZは DBCS mode をチェックしているようですが関係あるでしょうか。

SCRNIBM.ASM 2592:
;--- Check DBCS mode ---		; ##156.132

checkDBCS proc
IFDEF US
	mov	dbcs,FALSE	;0
ELSE
  IFDEF IBM
	pushm	<bp,ds,es>
	clr	si
	msdos	63h,0
	mov	al,FALSE	;0
	tst	si
_ifn z
	tstw	[si]
  _ifn z
IFDEF IBMAX
	clr	bl
	bios_v	50h,1
	cmp	bl,01h
	mov	al,TRUE
    _if e
	mov	al,FALSE	;0
    _endif
ELSE
	mov	al,TRUE		;1
ENDIF
  _endif
_endif
	mov	dbcs,al
	popm	<es,ds,bp>
  ENDIF
ENDIF
	ret
checkDBCS endp


KEYIBM.ASM 1588:
;--- Is DBCS mode? ---

	public	isDBCS
isDBCS proc
IFDEF US
	add	sp,2
	clc
ELSE
  IFDEF IBM
	extrn	dbcs		:byte
	tstb	dbcs
_if z
	add	sp,2
	clc
_endif
  ENDIF
ENDIF
	ret
isDBCS endp



11498/11487 DKM01189  鈴木康弘         Re^9: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 07:22 11497:konnoさんへのコメント コメント数:2
 わーい、やりました。MS-DOS Player上のVzで、プリフィックスキーを押した後のキーが無事IMEオフになりました。

> ただ、編集モード以外で [ESC] を押すと IME が ONになってしまうのが想定外でした。
> 私の説明が不正確だったせいで、IMEを自動復帰させているように思います。

 はて、これはどういうことかしら?鈴木の手元では全然問題になる動作をしませんが。

 これでMS-DOS PlayerとDOSVAXJ3は、機能がほぼ並んだようです。


 今後どちらをメインにしようか、うれしく迷ってる 鈴木

11499/11487 BQO00549  konno            Re^10: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 08:06 11498:鈴木康弘さんへのコメント コメント数:1
>  わーい、やりました。MS-DOS Player上のVzで、プリフィックスキーを押した後のキーが無事IMEオフになりました。

え? と思って オリジナルVZで試したらキチンと IME OFF しますね。
どうやら高橋版VZ以降の変更で動かなくなっているようです。
検証不足でした。m(__)m
オリジナルと高橋版の変更部分を調べなくては。

> > ただ、編集モード以外で [ESC] を押すと IME が ONになってしまうのが想定外でした。
> > 私の説明が不正確だったせいで、IMEを自動復帰させているように思います。
>  はて、これはどういうことかしら?鈴木の手元では全然問題になる動作をしませんが。

これは J3100のルーチンに変更して動かしたVZの話ですので。(^^;
キチンと動いているならなによりです。


11500/11487 DKM01189  鈴木康弘         Re^10: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 11:17 11498:鈴木康弘さんへのコメント コメント数:1
>  これでMS-DOS PlayerとDOSVAXJ3は、機能がほぼ並んだようです。

 ごめんなさい、DOSVAXJ3のメリットがまだありました。
 DOSVAXJ3はEMSを使えるのでした。
 鈴木の環境での両者のvmapを並べてみます。


DOSVAXJ3の場合

VMAP Version 2.00  Copyright (C) 1989-91 by c.mos

addr PSP  blks   size  owner/parameters           hooked vectors
---- ---- ---- ------  -------------------------  -----------------------------
D001-E000   1   65520  <free>
                       --- UMB total:  64 KB ---
0171 sys    2      80  <config>
0178 0040   1     256  
0189 1C4E   1     160  command (env)
0194 <--    2  109440  vzibmj 1.60  *.*           1B 29
1C4E <--    1    1024  command vmap
1C8F-9FFF   1  538352  <free>

----- EMS ver4.0 (frame: E000h) -----       ----- XMS ver3.00 -----
handle pages   size  name                   HMA not used
------ ----- ------  --------               EMB free: 14832 KB
     1     5    80k  vzibmj
  free   927 14832k
 total  1024 16384k


MS-DOS Playerの場合

VMAP Version 2.00  Copyright (C) 1989-91 by c.mos

addr PSP  blks   size  owner/parameters           hooked vectors
---- ---- ---- ------  -------------------------  -----------------------------
C001 sys    1       0  <config>
C002-F800   1  229344  <free>
                       --- UMB total: 224 KB ---
0207 sys    5    9824  <config>
0472        1    8192  <free>
0673 <--    1  184736  vzibmj 1.60  *.*           1B 22 29
338E        1  509712  <free>
B000 sys    1       0  <config>


 だから大きなファイルを扱うと、 DOSVAXJ3 の方が、テンポラリファイルエラーを起こしにくい。
(というか、使い始めてこの半年、経験していない。)  


 大きなファイルを編集するならDOSVAXJ3だな、と思った 鈴木


11501/11487 CTL00944  たけだ           Re^11: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 12:20 11500:鈴木康弘さんへのコメント コメント数:1
msdos -x vzibmjとすると、EMSが有効になります。

引数なしで起動するとオプション一覧が表示されます。
あわせてご参照ください。

11502/11487 DKM01189  鈴木康弘         Re^12: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 13:03 11501:たけださんへのコメント コメント数:2
 わあ、ごめんなさい、readmeをろくに読んでないのがばれた。
 確かに-xでEMSなどができました。

VMAP Version 2.00  Copyright (C) 1989-91 by c.mos

addr PSP  blks   size  owner/parameters           hooked vectors
---- ---- ---- ------  -------------------------  -----------------------------
D001 sys    1       0  <config>
D002-F800   1  163808  <free>
                       --- UMB total: 160 KB ---
0207 sys    5    9824  <config>
0472        1    8192  <free>
0673 <--    1    3840  vzibmj 1.60  *.*           1B 22 29
0764        1  690608  <free>
B000 sys    1       0  <config>

----- EMS ver4.0 (frame: C000h) -----       ----- XMS ver3.00 -----
handle pages   size  name                   HMA not used
------ ----- ------  --------               EMB free: 31680 KB
  free  2036 32576k
 total  2048-32768k

 またおそるおそる大きなファイルで実験してみます。


11503/11487 CTL00944  たけだ           Re^11: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 16:09 11499:konnoさんへのコメント コメント数:1
金野さん版で試してみましたが、$IBMAIASとかMS$KANJIとかをオープンするときに、
デバイス名がnull terminatedされていないため失敗しています。

MS-DOS Player側でその辺を対処して、$IBMAIASをオープンできるようにして、
INT 21h, AX=4400hでデバイス情報として0080hを返すようにして、
これでデバイスが存在すると認識してくれたはずなのですが、
それでもVZがINT 16h, Ah=13hを使ってくれない、という状況のようです。

試みに、MS$KANJIをオープンできるようにしたところ、
INT 21h, AX=4402hでデバイスの情報を問い合わせに来てくれました。
これはMS$KANJIをちゃんと実装すれば、そちらを使ってくれるかもです。


11504/11487 BQO00549  konno            Re^12: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 18:18 11503:たけださんへのコメント コメント数:1
> 金野さん版で試してみましたが、$IBMAIASとかMS$KANJIとかをオープンするときに、
> デバイス名がnull terminatedされていないため失敗しています。

試していただきありがとうございます。
私の版はFEP関連は高橋版のままなので、オリジナルとの違いを見てみたのですが
オリジナルがテーブル方式なのを別の方式に大幅に変えている感じです。
おそらく多くのFEPに対応するためだと思われます。

想像ですが、テーブル方式を止めたために逆に存在確認が出来なくなったとかかなぁと。

> MS-DOS Player側でその辺を対処して、$IBMAIASをオープンできるようにして、
> INT 21h, AX=4400hでデバイス情報として0080hを返すようにして、
> これでデバイスが存在すると認識してくれたはずなのですが、
> それでもVZがINT 16h, Ah=13hを使ってくれない、という状況のようです。

複雑すぎて私には全く見当もつかないです。

> 試みに、MS$KANJIをオープンできるようにしたところ、
> INT 21h, AX=4402hでデバイスの情報を問い合わせに来てくれました。
> これはMS$KANJIをちゃんと実装すれば、そちらを使ってくれるかもです。

そういえば、高橋版はデバイス名のヌルが抜けてるというのを思い出して過去記事を検索してみました。
#6453 で10#さんが調べてくれていました。

> 通常IASの検出はオープンハンドル法といって、"$IBMAIAS"というデバイスを
> オープンできるかどうかで判断しています。
> この"$IBMAIAS"というファイル名は終端にNUL文字が必要で、オリジナルの
> ソースにはあるのですが、k07s3のソースには見当たりません。
> このため、"$IBMAIAS∀・ッヘクヘUヘqヘッヘクヘPサ"というファイルをオープン
> しようとしています。
> 未確認ですが、おそらく通常のIASは検出できないものと思われます。
> VTDOS1.39では先頭8文字のみを比較して、強制的にIASを検出させています。

これだ! 思い出した! これが原因だと思います。

私は #6458> > この"$IBMAIAS"というファイル名は終端にNUL文字が必要で、オリジナルの
> > ソースにはあるのですが、k07s3のソースには見当たりません。
> 
> 気が付きませんでした。確認してみたところ、高橋版以外はありました。
> したがって高橋版の系列は皆抜けています。これは直します。
> 
> 高橋版は初期のものでNULが一つ足りなくて、それ以降のはNULが無くなっています。
> これはVZIBMJ.COMをVZで開いて、"$IBMAIAS"を検索してわかりました。

こう返していて、当時のVZソースを以下のように変更していました。

IFDEF IBMAX
		db	FP_MSKANJI
		db	0
ENDIF
		db	0				; ##k07t2 14-05-11
vct16		dd	0				; tVZで抜けていた

ところがそれ以降の版ではこれを忘れていて抜けたままになってしまったようです。
これを追加した版で試したらキチンと動作しました。
お騒がせしました。m(__)m

高橋版に対応させるために 10#さんは上記のような対応で WinIME制御を実現してくれたのだと思います。
できましたらそのようにして高橋版でも動くようにお願いいたします。m(__)m


11505/11487 CXB00940  としき           Re^13: MS-DOS Player 2024/9/21版更新
( 0) 24/09/21 21:37 11502:鈴木康弘さんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
あぁ、久々にオリジナルのままのVMAPを使っている人を見かけた。

> ----- EMS ver4.0 (frame: C000h) -----       ----- XMS ver3.00 -----
> handle pages   size  name                   HMA not used
> ------ ----- ------  --------               EMB free: 31680 KB
>   free  2036 32576k
>  total  2048-32768k

私はVMAPにパッチを当てて、マイナスの値が出ないようにしています。
あ、でも、昔と違って私が最近使っているマシンでは、そもそもマイナスの値になる
ほどのサイズのEMSが取得できない。
このパッチ情報も、今では意味がないというか、ある種、歴史に埋もれつつある情報
と言ってもいいのかもしれない。


11506/11487 BQO00549  konno            vmap としきパッチ
( 0) 24/09/21 23:39 11505:としきさんへのコメント
> あぁ、久々にオリジナルのままのVMAPを使っている人を見かけた。
> 
> >  total  2048-32768k

う、そういえばうちのも出るなぁ。(^^;

> 私はVMAPにパッチを当てて、マイナスの値が出ないようにしています。
> あ、でも、昔と違って私が最近使っているマシンでは、そもそもマイナスの値になる
> ほどのサイズのEMSが取得できない。

この板で「VMAP パッチ」で検索すると #1429> これで vmap としきパッチが、ふたたび生きてきました!

という記事が出ました。ここではこれ以上の情報が見つからないので、もしかしてやしきに
と思ってやしきに忍び込んだらVZの部屋で見っけ。\(^^)/ ヤッタ-

で、早速VZでVMAP.COMを開いてやってみたのですが、キーワードが見つかりません。
あれぇ? と思って冒頭を見ると、diet の文字が。そうです。DIET圧縮されていたのでした。(>_<)

>diet -ra VMAP.COM  でめでたく圧縮解除できました。

1991/12/16  02:01             3,031 VMAP.COM 圧縮
1991/12/16  02:01             3,173 VMAP.COM

これで指示通りに出来てパッチ当て出来ました。\(^^)/ ヤッタ-
昔やった気がするのですが、いつのまにか元のに戻ってしまってたんですね。(^^;

> このパッチ情報も、今では意味がないというか、ある種、歴史に埋もれつつある情報
> と言ってもいいのかもしれない。

いやあ、としきさんのおかげで何十年ぶりかで VMAP の表示が直りました。
ありがとうございます。


11507/11487 CTL00944  たけだ           Re^13: MS-DOS Player 2024/9/21版更新
( 0) 24/09/22 02:33 11504:konnoさんへのコメント コメント数:1
高橋版VZエディタ向けの修正を入れたバージョンをリリースしました。

ただ、金野さん版のVZvt02 (2010-05-15)だと、まだFEPが制御されないみたいです。
FEPの存在チェックとDBCSのチェックは通っているのですが。。。
最新版だと問題なさそうでしょうか?

11508/11487 BQO00549  konno            Re^14: MS-DOS Player 2024/9/21版更新
( 0) 24/09/22 03:13 11507:たけださんへのコメント
> 高橋版VZエディタ向けの修正を入れたバージョンをリリースしました。

ありがとうございます。高橋版も私家版もバッチリでした。

> ただ、金野さん版のVZvt02 (2010-05-15)だと、まだFEPが制御されないみたいです。
> FEPの存在チェックとDBCSのチェックは通っているのですが。。。

すみません、その版は特殊な版で、VTDOSがIME制御できる前のテスト版でした。
削除しますのでその版は無かったことにしてください。m(__)m

> 最新版だと問題なさそうでしょうか?

はい、問題ないです。
全部の版に対応していただき、本当にありがとうございました。


11509/11487 DKM01189  鈴木康弘         Re^13: MS-DOS Player 2024/9/21版更新
( 0) 24/09/22 11:27 11502:鈴木康弘さんへのコメント コメント数:1
 あれれ、テンポラリファイルエラーとEMSは関係なかったみたいです。

 400kBくらいの大きなファイルを編集して、そのファイルを最初から最後まで見るのをくりかえしていると、EMSを設定しても、テンポラリファイルエラーが起こります。

 たしか以前のバージョンのMS-DOS Player上のVzは、EMSを設定しなければHDD上にテンポラリファイルを作ってたのに、今回は作らなくなった、のでしょうか?

11510/11487 CTL00944  たけだ           Re^14: MS-DOS Player 2024/9/21版更新
( 0) 24/09/22 12:37 11509:鈴木康弘さんへのコメント コメント数:2
環境変数に指定されているTEMPのパスが深かったり、
短いファイル名をサポートしていないとかはないでしょうか?

C:\TEMPとか適当なディレクトリを作っておいて、
環境変数にMSDOS_TEMP = C:\TEMPとかを定義しておくと、
MS-DOS Player上でそちらがTEMPとして扱われます。

これで解決しないかご確認お願いいたします。


11511/11487 BQO00549  konno            MS-DOS Player 2024/9/22版更新
( 0) 24/09/22 13:07 11487:konnoさんへのコメント
MS-DOS Player 2024/9/22版が更新されました。
内容は
-----------------------------------------------------------
2024/9/22
高橋版VZエディタ向けの修正を行いました。
INT 21h. AH=3Dhで、$IBMAIASをオープンすることで存在チェックをしていますが、
デバイス名がnull terminatedになっていませんでした。
$IBMAIASから始まるパスは、強制的に8文字までで切るように補正します。
INT 21h, AX=4400hで、$IBMAIASのデバイス情報にDX=8080hを返すようにしました。
高橋版VZエディタは、DL=80hになっているかチェックしているようです。


2024/9/21
DOSVAXJ3の実装を参考に、INT 16h, AH=13hと、INT 6Fhの実装を整理しました。
IMEのオンオフやモードの取得・変更をする処理です。
また、$IBMAFNT/$IBMADSP/$IBMAIASが存在しているふりをするようにしました。
(ダミードライバの追加と、INT 21h, AH=3Dhでオープンできるようにした)
DOSVAXJ3だとVZでIMEの制御がうまくできるらしいので、これで様子をみてみます。

システムポートのbit4, bit5で、タイマーのCh.1/2の出力の読めるようにしました。
それぞれ、RAMのリフレッシュ信号と、ビープ音の信号に使用されています。
前者は15us間隔でトグルしますが、そこまで高精度に時間を管理できないので、
連続して読む度に、1msの間に最大66回までトグルするようにしました。
…こんなところをチェックするCLIなツールがあるとも思えませんが(苦笑)

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

備忘録として 9/21 の分まで載せています。
今回の高橋版VZ向けの更新で 全てのVZで WinIME が制御出来るようになりました。
ありがとうございます。


# 10年以上前の記事が役に立つこともあるんだなぁ・・・


11512/11487 BQO00549  konno            Re^15: MS-DOS Player 2024/9/21版更新
( 0) 24/09/22 13:32 11510:たけださんへのコメント
まとレスです。

鈴木さん
>  400kBくらいの大きなファイルを編集して、そのファイルを最初から最後まで見るのをくりかえしていると、EMSを設定しても、テンポラリファイルエラーが起こります。

私の経験では、オープン窓の履歴から巨大ファイルを開いて編集するとテンポラリエラーになりました。
VZの初期化処理か何かに問題が有るのではないかと疑っています。
再現する操作手順があれば教えてください。

>  たしか以前のバージョンのMS-DOS Player上のVzは、EMSを設定しなければHDD上にテンポラリファイルを作ってたのに、今回は作らなくなった、のでしょうか?

VZでは HDDでも EMSでも XMSでも一時ファイルは全部テンポラリファイルと言っていたと思います。
EMSが有っても無くてもエラーが出るなら問題は別の所にあるのかも。

武田さん
> 環境変数に指定されているTEMPのパスが深かったり、
> 短いファイル名をサポートしていないとかはないでしょうか?

流石です。私はそこまで考えていませんでした。(^^;
VZは TMP を使うのでこれは設定していると思いますが、設定していないと色々困りますしね。


11513/11487 DKM01189  鈴木康弘         Re^15: MS-DOS Player 2024/9/21版更新
( 0) 24/09/22 16:54 11510:たけださんへのコメント コメント数:1

 すばやい返答、ありがとうございます。
 set で確認すると

TEMP=C:\USERS\USER\APPDATA\LOCAL\TEMP

 おお、自分で環境変数をいじった記憶はないから、これがcmd.exeの初期設定なのかな。
 そこに確かに、3Mに太ったVZTEMP.$$$がいました。

> たしか以前のバージョンのMS-DOS Player上のVzは、EMSを設定しなければHDD上にテンポラリファイルを作ってたのに
 これはDOSVAXJ3と混同した世迷い発言でした。


 とりあえずEMSの設定はなしにして、

set msdos_temp=c:\users\user

 として、わかりやすいところにテンポラリファイルを作って様子をみてみます。

11514/11487 DKM01189  鈴木康弘         Re^16: MS-DOS Player 2024/9/21版更新
( 0) 24/09/23 09:06 11513:鈴木康弘さんへのコメント コメント数:2
 追記です。

 MS-DOS Player 上のVzを終了するとき、Vzを終了させればいいのだけれど、えいっとcmd.exeごと終了させることが僕はあります。そうするとHDD上にVZTEMP.$$$を残したままになるわけです。

 以前純粋MS-DOS上でVzを立ち上げていたとき、もしVZTEMP.$$$がディスク上に残っていたら、まずそれを消去するようにしてました。今のDOSVAXJ3でもそうしてます。

 MS-DOS Playerは、カレントディレクトリでないところにVZTEMP.$$$を作ってたので、その場所が僕にわからなかったのでした。
 他の環境と同様、これもVzの新規起動時には削除するようにしました。
 これで、いまのところテンポラリファイルエラーはないようです。


11515/11487 CTL00944  たけだ           Re^17: MS-DOS Player 2024/9/21版更新
( 0) 24/09/23 12:10 11514:鈴木康弘さんへのコメント
実機でも、VZを起動中にPCの電源を落としたら、同じ状況になるのかと思います。
そうなると、MS-DOS Player側で何か対処するのも変な話かもしれません。

一応、異常終了時のハンドラーがあるので、そこで消せなくもないのですが、
それが原因で不具合を起こしそうで怖いですね。

できるだけ、運用で補っていただければと思います。

11516/11487 BQO00549  konno            Re^17: MS-DOS Player 2024/9/21版更新
( 0) 24/09/23 18:39 11514:鈴木康弘さんへのコメント
>  MS-DOS Player 上のVzを終了するとき、Vzを終了させればいいのだけれど、えいっとcmd.exeごと終了させることが僕はあります。そうするとHDD上にVZTEMP.$$$を残したままになるわけです。

ああ、そういうことでしたか、すっかり失念していました。
高橋版VZ以降は TEMPファイルをユニークにしたので、複数窓でVZを使っていても問題無くなっていたのです。
もちろんVZを強制終了して TEMPファイルが残っても問題ありません。

>  以前純粋MS-DOS上でVzを立ち上げていたとき、もしVZTEMP.$$$がディスク上に残っていたら、まずそれを消去するようにしてました。今のDOSVAXJ3でもそうしてます。

高橋版VZでも、ファイラーの一時ファイル FILES.$$$ は複数窓同時に使うと駄目なので
やっぱりエミュごとにTMPフォルダー分けた方がいいですね。
私も VZ起動BATで TMPを分けて使うように見直してみます。


11517/11517 BQO00549  konno            暫定掲示板を過去ログ 0番に
( 0) 24/09/26 23:58
昨日のログ置き場に置いていた暫定掲示板の 過去ログ(nifty log 形式)を
「今日のテーマ」の過去ログ 0番に設置しました。

-----------------------------------------------------------
昨日のログ置き場

暫定掲示板の 過去ログ nifty log 形式
 ※今日のテーマ以前に運用していたniftyの個人掲示板の過去ログです。あじゃさんからCMT形式でいただきました。

#00002#00029  KAKO_00.LZH 3,995bytes(2004/07/15〜2004/09/28)
-----------------------------------------------------------

このログを ツリー形式で表示しました。形式が若干違いますが、仕様ということで。
あわせて FGAKDC の修正と検索不具合を修正して、ログ0番まで検索できるようにしました。
LOG No. 0  のようにログ番号を表示するようにしたので、利便性が増していると思います。

検索漏れを見つけたら教えてもらえるとありがたいです。

# としきさんの unix time マクロを基に、全自動変換できました。\(^^)/ ヤッタ-


11518/11025 CXB00940  としき           Re^5: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/28 15:54 11480:konnoさんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
> > あるいは「morek」という語句を、過去ログの0026、0025、0024で検索した場合の
> > 挙動なんかをみると、なんか、検索を始めたログよりも過去方向にはたどるけれど
> > 未来方向にはたどらない、という挙動のように見える。

> うう、うちのはそういう挙動になっていましたか、サーチルーチンは共通だったんですね。
> 直すならやっぱりフラグかなんかですかね。直す気はないけど。(^^;
> うーん、でもとしきさん方式も良いかも。ちょっと迷ってきてます。(^^;

もしかしてこの辺、何か検索ルーチンに手を加えている最中でしょうか。
なんとなくデグレが発生しているような気がする。
それとも、もともと不具合があったのに私が気がついていなかっただけかも。

なんてもいいのですが検索を行い、検索結果を含むツリーを一括表示をさせようと
リンクを踏むと、過去ログに落ちている発言はきちんとツリー一括表示が出てきます
が、現行ログ内に存在する発言の検索結果からは一括表示が出てきません。

ご確認をお願いします。

11519/11025 BQO00549  konno            Re^6: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/28 20:05 11518:としきさんへのコメント コメント数:1
> なんてもいいのですが検索を行い、検索結果を含むツリーを一括表示をさせようと
> リンクを踏むと、過去ログに落ちている発言はきちんとツリー一括表示が出てきます
> が、現行ログ内に存在する発言の検索結果からは一括表示が出てきません。

うう、デグレというか、ログ0番検索対応のバグでした。(>_<)
直しましたので、ご確認願います。m(__)m

> 検索を始めたログよりも過去方向にはたどる
これは変わっていないと思います。


11520/11025 CXB00940  としき           Re^7: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/29 18:49 11519:konnoさんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
> うう、デグレというか、ログ0番検索対応のバグでした。(>_<)
> 直しましたので、ご確認願います。m(__)m

直っていますね。よかったよかった。
私のほうも、何とかしたいなぁ。
でも、同じ不具合は入れないと思うけど、もっとひどい不具合を入れ込みそう。


11521/11025 BQO00549  konno            Re^8: 野ざらし言と板塀に全ログ検索を
( 0) 24/09/29 23:15 11520:としきさんへのコメント コメント数:1
> 直っていますね。よかったよかった。

もうスパゲッてわけわからん状態なので、修正が大変でした。(>_<)
問題なさそうでホッとしました。(^^;

> 私のほうも、何とかしたいなぁ。
> でも、同じ不具合は入れないと思うけど、もっとひどい不具合を入れ込みそう。

今の私のソースはとても参考にならない(できない)状態です。(^^;;
その前のも FGALDC 対応でややこしくなってたんですけどね。(^^;


11522/11025 CXB00940  としき           Re^9: 野ざらし言と板塀に全ログ検索を
( 0) 24/10/02 23:05 11521:konnoさんへのコメント コメント数:1
参照先:http://toshiki.la.coocan.jp/
> もうスパゲッてわけわからん状態なので、修正が大変でした。(>_<)

これは、比喩に比喩を重ねた表現、ということでいいのですよね。
もともとのプログラム用語で言うところのスパゲッティ、からみあっているという
比喩的表現なわけですが、これって基本的にgotoであちこち飛ばしまくっていること
を意味しているわけですよ。つまり、条件分岐とループだけでプログラムを構成して
いるならスパゲッティにはならない、というのがソフトウェア工学の理屈。
もちろん世の中、そう完璧に理屈どおりにはならない、というのはさておき。
perlで、本来的な意味でのスパゲッティなプログラム、作ろうと思えば作れるでしょう
けど、本当にそういうプログラムが作れる人は、逆説的な意味で天才。
ということで、あたかもスパゲッティなプログラムであった、と仮定して。
まさかと思いますが、不要なコメントが大量にあった、とかいうことではないです
よね。何回も私が口を酸っぱくして、取れ〜、取り除け〜、と呪いの言葉のごとく
ほざいていたわけですから。
まじめな話、これからの人生で少しでも楽をするために、上っ面でもいいですから
konnoさんはソフトウェア工学の基礎を学んだほうがいいかもしれない。
人生は有限ですから。


11523/11025 BQO00549  konno            Re^10: 野ざらし言と板塀に全ログ検索を
( 0) 24/10/03 17:54 11522:としきさんへのコメント
> > もうスパゲッてわけわからん状態なので、修正が大変でした。(>_<)
> これは、比喩に比喩を重ねた表現、ということでいいのですよね。

いやあ、増築に増築を重ねた結果、だと思います。
#11519 で書いたように

> うう、デグレというか、ログ0番検索対応のバグでした。(>_<)

これは本来1番から始まる過去ログにゼロ番を無理やりねじ込んだせいなのです。
私の力量では条件分岐とループだけでは実現できなかったのでフラグなど使ったのですが
やはり見落としが有りましたね。

#			if ($in{'pastlog'} >= 0) {
#			if ($mode eq "past") {
			if ($in{'act'} eq "past") {

おそらくここが原因だったかと思いますが、コメントで試行錯誤の痕跡がわかりますね。

> まさかと思いますが、不要なコメントが大量にあった、とかいうことではないですよね。

私にとっては有用なコメントもあると思っています。
そういえば他にも、過去ログで返信ボタンを表示していたバグも発覚しました。(>_<)

		if ($mode ne "past") {
#		if ($in{'act'} ne "past") {

過去ログにゼロ番を無理やりねじ込むためこう変更したのですが、効いていませんでした。(>_<)
しかたないので、コメントを戻して両方効くようにしたら直りました。泥縄だぁ〜 (^^;

		if ($mode ne "past") {
			if ($in{'act'} ne "past") {

> まじめな話、これからの人生で少しでも楽をするために、上っ面でもいいですから
> konnoさんはソフトウェア工学の基礎を学んだほうがいいかもしれない。
> 人生は有限ですから。

それが頭に入らない、理解できないからここまでズルズルきたのではないかなぁ。(;_;)


11524/11524 BQO00549  konno            DOSVAXJ3 でクリップボードは
( 0) 24/10/03 20:02 コメント数:2
DOSVAXJ3 で CLPPST.DEF が使えなくてクリップボードのやり取りに悩んでいたのですが
最近過去ログ整理で読み直していたら、ファンクションコールで実現する記事がありました。
全文引用します。
-----------------------------------------------------------

#4898:Re^2: VTDOSインストチェック  投稿者: 文太   2010/01/21(木) 12:26

 1文字欠ける?

=== Macrotmp by B ===;
* M
50 ^^ "Macrotmp"
;	p="0123456789", 
	p="あいうえおかきくけこ", 
	&Sn(p) cx=r, si-,	;size etc  for SET func
	ax=gz, bx=p,		;ptr (ax->es)
	dx=1,			;type
	&>
	&m("finished").

0:	&i(3+$)."$
	$(50,B8,01,17,CD,2F,B8,02,17,CD,2F,07,B8,03,17,CD)$
	$(2F,B8,08,17,CD,2F,C3)$"

;	push ax
;	mov ax,1701h	;open
;	int 2Fh
;	mov ax,1702h	;clear
;	int 2Fh
;	pop es
;	mov ax,1703h	;set
;	int 2Fh
;	mov ax,1708h	;close
;	int 2Fh
;	ret

*
-----------------------------------------------------------

これをVTDOSで実行するとクリップボードにコピーできました。\(^^)/ ヤッタ-
本来 XP ではこのファンクションは使えないはずですが、10#さんが対応してくれたんですね。
で、1文字欠ける? というのは、XPの仕様どおりだと文字列の最後の1バイトが欠けるのですね。
それにも10#さんは対応してくれました。m(__)m

それで、ダメもとでこのマクロを DOSVAXJ3 で実行させたら、なんと! 動くではありませんか!!
おお!!!! と思いましたが、最後の1文字が欠けています。
これは、軟式さんに報告して直してもらおうと思います。
キーボードでコピーするのもうまく動かないのでそれも聞いてみます。

お忙しいでしょうから、返事がもらえるかわかりませんが、メールしてみますね。


11525/11524 BQO00549  konno            ClpPst.def 改 DOSVAXJ3に仮対応
( 0) 24/10/04 01:32 11524:konnoさんへのコメント コメント数:1
OSVAXJ3でも Fコールでクリップボードコピーが出来るのが分かったのでやってみました。
#1141 の H岡さんのマクロと文太さん情報で実現できました。\(^^)/ ヤッタ-

一応VZマクロの部屋に置きました。

  ClpPst.def 24-10-04
・寅次氏作のクリップボードマクロの改造版。DOSVAXJ3に仮対応。ほとんどテストしてません。
・環境変数 VZSYM に AXJ3 が必要です。 ※高橋版VZ以降が必要
 SET VZSYM = AXJ3

人柱^H 動作報告お待ちしてます。(^^;


ここにも置いておきますね。
#txt:ClpPst.def


11526/11524 BQO00549  konno            Re: DOSVAXJ3 でクリップボードは
( 0) 24/10/05 16:09 11524:konnoさんへのコメント コメント数:1
軟式さんにメールしたところ、対応テスト版をいただきました。
クリップボードへコピーは正常にできました。
ありがとうございます。

> この機能ですが、本家 DOSBox では実装されておらず、DOSVAXJ3 では
>Wengier 氏が作成した LFN とクリップボード対応 DOSBox からいろいろ
>移植した際に追加されたと思われます。その時点で 1 バイト欠けのバグ
>はあったようです。

ということのようです。
ClpPst.EXE が使えなくて困っていたので助かりました。
今ペーストの方を試行錯誤していますが、なかなか難しいです。

とりあえず @[F10] でペーストは出来るのですが、VZのインデントが効いてしまいます。

    ax$1705, cx=ax, dx+, &i($2F)	    ;GET Clipboard DATA

この実装がわからなくて頓挫しています。
どなたかお知恵を〜  m(__)m


11527/11524 CTL00944  たけだ           Re^2: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 11:15 11526:konnoさんへのコメント コメント数:1
MS-DOS Playerでも、INT 2Fh, AH=17hを一部サポートしてみました。

ちょうど本業で、クリップボードを操作する処理を書いてまして(苦笑)
実にタイミングが良かったです。

#古いVB6のアプリで、UNICODEなファイルパスをテキストボックスにコピペする、
#みたいな処理を書いてました。

11528/11524 BQO00549  konno            Re^3: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 15:07 11527:たけださんへのコメント コメント数:1
> MS-DOS Playerでも、INT 2Fh, AH=17hを一部サポートしてみました。

武田さん、ありがとうございます。
古い版の MS-DOS Player は INT2F 1700h 不可でしたが、CLPPST.EXEが使えるので問題ありませんでした。
新しい版を VZマクロで試してみました。

=== INT2F_17.DEF ===
* M
80 ^\ "INT2F 1700"
	?.
	ax=$1700, &i($2F)		;IDENTIFY WinOldAp VERSION
	&m("1700   ax:%x dx:%x",ax,dx) 
	(ax==$1700)?.			; ax$1700 なら未サポート
*

このマクロでは、ax101h とか出るのでインストチェックはOKです。
次に文太さんのコピーチェックマクロでは

=== Macrotmp by B ===;
* M
50 ^\ "Macrotmp"
;	p="0123456789", 
	p="あいうえおかきくけこ", 
	&Sn(p) cx=r, si-,	;size etc  for SET func
	ax=gz, bx=p,		;ptr (ax->es)
	dx=1,			;type
	&> a=r,
	&m("finished %d %s",a,p).

0:	&i(3+$)."$
	$(50,B8,01,17,CD,2F,B8,02,17,CD,2F,07,B8,03,17,CD)$
	$(2F,B8,08,17,CD,2F,C3)$"

;	push ax
;	mov ax,1701h	;open
;	int 2Fh
;	mov ax,1702h	;clear
;	int 2Fh
;	pop es
;	mov ax,1703h	;set
;	int 2Fh
;	mov ax,1708h	;close
;	int 2Fh
;	ret
*

これは MSDOS.EXE 起動直後に実行するとコピー出来ていないようです。
下のマクロを実行後はキチンとコピー出来たようです。
テストマクロでは何か初期化かパラメータが足りないのでしょうか。
 
次に H岡さんのマクロでは

=== cliput.def ===
*m
89 ^\ "ブロック箇所をテキストスタックとクリップボードへコピー"
    ?. (mb)??{ #> #b #< }		; ★ 非ブロックモードは1行コピー  追加
    #k dz[=kz, cx=kp..-1, bx=kp-3-cx, dz],
;   cx++,				; ★ 1バイト補完
;-- テキストスタック格納データをクリップボードへコピー
    ax$1701, &i($2F)                                    ;Open Clipboard
    ax$1702, &i($2F)                                    ;Empty Clipboard
    ax$1703, dx+, si-, di=kz, &i("$(8E,C7,CD,2F,C3)")   ;Set Clipboard Data
;E8FF:0000 8EC7           MOV    ES,DI
;E8FF:0002 CD2F           INT    2F
;E8FF:0004 C3             RET    
    ;DX=1:text
    ;ES:BX = data source ->di:bx
    ;SI:CX = data size   ->00:cx
    ax$1708, &i($2F)                                    ;Close Clipboard
*

コピーは出来ますが、文字列の最後に 02h+12h の文字コードが出ています。
これらのマクロは VTDOSや DOSVAXJ3テスト版では正常に動作しています。
よろしくお願いします。

コピーは出来たのですが、ペーストで躓いています。
ペーストのアセンブラプログラムなど教えてもらえないでしょうか。
今の私は頭が働かなくて、(;_;)

※ これは DOSVAXJ3 でコピーしてみました。あれ?最後に全角文字がある??
 と思ったら、01h が出ていました。
 cx++, の1バイト補完したままが原因でした。m(__)m

11529/11524 CTL00944  たけだ           Re^4: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 16:26 11528:konnoさんへのコメント コメント数:2
MS-DOS Player内のコードで、以下のような処理で検証をしています。

const char hoge[]="あいうえおかきくけこ";

// ES:BX = 0000:0000
CPU_LOAD_SREG(CPU_ES_INDEX, 0);
CPU_BX=0;
memcpy(mem + CPU_ES_BASE + CPU_BX, hoge, sizeof(hoge));

// クリップボードを開く
CPU_AX=0x1701;
msdos_int_2fh_17h();
// クリップボードを空にする
CPU_AX=0x1702;
msdos_int_2fh_17h();
// ES:BXからSI:DIだけクリップボードにコピーする
// 10バイトなので「あいうえお」だけコピーする
// ※ お尻にnull-terminatorを追加してコピーされる
CPU_SI=0;
CPU_DI=10;
CPU_DX=1;
CPU_AX=0x1703;
msdos_int_2fh_17h();
// クリップボードを閉じる
CPU_AX=0x1708;
msdos_int_2fh_17h();

// クリップボードを開く
CPU_AX=0x1701;
msdos_int_2fh_17h();
// クリップボード内のデータのサイズを取得
CPU_DX=1;
CPU_AX=0x1704;
msdos_int_2fh_17h();
// クリップボード内のデータをES:BXに取得
CPU_DX=1;
CPU_AX=0x1705;
msdos_int_2fh_17h();
// クリップボードを閉じる
CPU_AX=0x1708;
msdos_int_2fh_17h();

クリップボード内のデータサイズの取得は、GlobalSize()を使うよりも、
strlen()でデータの文字列長を取得するほうが良さげっぽいですね。
次のリリースで変更しておきます。

11530/11524 CTL00944  たけだ           Re^5: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 19:00 11529:たけださんへのコメント コメント数:1
INT 2Fh, AX=1704hでクリップボード内のデータのサイズを取得できなかったときに、
DX=0にならない問題もありました。
これも次のリリースで直しておきます。

11531/11524 CTL00944  たけだ           Re^6: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 22:03 11530:たけださんへのコメント
もうちょっと色々修正してみました。
最新版だと如何でしょうか?

11532/11524 BQO00549  konno            Re^5: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 22:03 11529:たけださんへのコメント コメント数:1
> MS-DOS Player内のコードで、以下のような処理で検証をしています。

わかりやすいソースをありがとうございます。
なんとか出来そうな気がしてきたのでこれを参考に試行錯誤してみます。
m(__)m


11533/11524 CTL00944  たけだ           Re^6: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 22:05 11532:konnoさんへのコメント コメント数:1
すみません、コピーするデータ長は、SI:DIでなくSI:CXでした。
先ほど修正したバージョンをリリースしています。

11534/11524 BQO00549  konno            Re^7: DOSVAXJ3 でクリップボードは
( 0) 24/10/06 22:46 11533:たけださんへのコメント コメント数:1
> すみません、コピーするデータ長は、SI:DIでなくSI:CXでした。

ありがとうございます。

> 先ほど修正したバージョンをリリースしています。

いただきました。テストマクロは正常に動作しているようです。


11535/11524 CTL00944  たけだ           Re^8: DOSVAXJ3 でクリップボードは
( 0) 24/10/07 00:56 11534:konnoさんへのコメント コメント数:1
> いただきました。テストマクロは正常に動作しているようです。

ご確認ありがとうございます。
正常に動作して安心しました。
バグのせいで不必要な検証をしていただいて申し訳ないです。

11536/11524 BQO00549  konno            Re^9: DOSVAXJ3 でクリップボードは
( 0) 24/10/08 19:17 11535:たけださんへのコメント
クリップボードからペーストも正常動作を確認できました。
マクロが上手く動かないので時間が掛かりました。m(__)m

メモリにペーストするところをファイルに入れようとして躓いていました。
張り付けるサイズ分を事前に確保しておかないと駄目なんですね。
DOSエミュ3種とも同じ動作になるので、仕様どおりなのだと思います。
・・・と思ったけど、VTDOSはヌルが残る場合が有りますね。

マクロはもう少し整理してから公開します。
ありがとうございました。

11537/11537 BQO00549  konno            ClpPst.def DOSVAXJ3対応 10/10版
( 0) 24/10/10 23:17 コメント数:1
ClpPst.def DOSVAXJ3対応 10/10版です。
クリップボードへのコピー、ペーストに仮対応しました。

  ClpPst.def v05e4 24-10-10 new!
・寅次氏作のクリップボードマクロの改造版。DOSVAXJ3に仮対応。あまりテストしてません。
・DOSVAXJ3は INT2F のFコール使用、それ以外は 従来どおりCLPPST.EXE 使用します。
・INT2F 使用時は、コピー64k以内、ペーストBL(8192)以内の制限があります。
・VZ1.6用 オリジナルVZでも動くと思います。

※ DOSVAXJ3以外で INT2F モードを試す時は、★印の行2か所をコメントにします。

#txt:ClpPst.def

INT2F 使用時は、コピー64k以内、ペーストBL(8192)以内の制限があります。
特にペーストは私の脳力不足でラインバッファ使用が精いっぱいでした。(;_;)
以下にペーストのソースを張りますのでどなたか64k対応とかお願いします。m(__)m

=== paste.def ===
*m
62 ^V	"ペースト"
	?. 
;	&02	;-------------------------------------	;機種チェック  #05e
;	(c<2)?>A					;★ DOSVAXJ3以外なら >a
	&s &04 #^ #< #b #_ #> ux[+, 			;CLPPST.TMP open
:b	#y (mb)?>b ux], d-,				;内容をクリア
	ax$1701, &i($2F)				;Open Clipboard
	ax$1704, dx+, &i($2F)				;GET Clipboard DATA SIZE
	&m(" ax:%x dx:%x ",ax,dx) 
	(dx)?{ #C (s)? 'n' &m("%x:%d   buf over!",dx,cx) .} ;65535 over!
	cx=ax, &s
	(cx>=bl)?{ #C (s)? 'n' &m("%d   buf over!",cx) .}   ;bl 8192 over!
	&m(" ax:%x dx:%x ",ax,dx) 
	(ax>4096 && d==0)?{&s (4096){" "}  #] &d #b #^ #k ax=ax-4096, d+, } ;4096埋める
	&s
:d 	&m(" ax:%x ",ax) 
	(ax<0 && d>0)?{#p ax=ax-4096, >d }		;4096分スペースで埋める
	(ax>4096 && d>0)?{#p ax=ax-4096, >d }		;4096分スペースで埋める
:e	(ax)?{ &?(" ") ax--, >e }			;残り分スペースで埋める
	&m(" ax:%x ",ax) 
	#^ #< #28 bx=cp,
	ax$1705, dx+, si-, di=gz,    ;8ec7 mov es,di	;Set Clipboard Data
	&i("$(8E,C7,CD,2F,C3)")      ;cd2f int 2fh	;Set Clipboard Data
	ax$1708, &i($2F)	     ;c3   ret		;Close Clipboard
	#] &d #^ #<
	ps[=pa, #F &o(0) #m #c ps], (r)?>K		;ヌルがあれば検索
	#b #_ #> ux[+, #y ux],				;ヌル以降削除
	(mb)?#b
:K	#_ #> #b #^ #< #k 
	#C (s)? 'y' 					;クローズ
	#i &d &m("INT2F: ClipBoard >> Text!")
	.

02:	c-,					;--- int2f frag  check ---
	ax=$1700, &i($2F)			;IDENTIFY WinOldAp VERSIO
	( ax == $1700 )??c++,			; WinOldAp サポートなら c+1
	ax=$7476,bx=$0000,cx=$6F64,		;VTDOS:0  MSP:1  DOSVAXJ3:7476
	&i($2F)					;VTDOS check $7476なら DOSVAXJ3
	( ax == $7476 )? c=c+2,			;DOSVAXJ3なら c+2
;	&m("7476   ax:%x c:%d",ax,c)		;ax=7476 なら未サポート 

04:	a-, mx[+, sn[-, #O &?("%sCLPPST.TMP",pi) #m	;--- CLPPST.TMP ---
		(s)?{ #[ #[ a+, } sn], mx],
	(a)?{ &m("クリップボードがカラかテキスト以外です") &d . }

*
; a,b,c,d,f,p 使用
;8ec7	mov	ES,BX
;cd2f	int	2Fh
;c3	ret

追記 
DOSVAXJ3は新版がまだ正式公開されていませんでした。
旧版用に ★★印の cx+, を活かしてあります。
メールでいただいたテスト版のURLを張り付けておきます。

>  1 バイト欠けですが、修正してみました。
>  下記よりテスト版をダウンロードしてください。64bit 版です。
> https://www.nanshiki.co.jp/test/dosboxj_test.zip


11538/11538 BQO00549  konno            DOSVAXJ3 (2024/10/11)版
( 0) 24/10/11 20:11
DOSVAXJ3 (2024/10/11)版が公開されました。
内容は

-----------------------------------------------------------
build JP241011 (2024/10/11)
int 2Fh ax=1703h のクリップボードセットで文字列末尾が欠けるのを修正しました。

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

これで DOSVAXJ3 でもクリップボードが使えるようになりました。
ありがたいです。

ClpPst.def の INT2Fペーストで末尾に ^A が出る場合があったのでこの後修正します。


11539/11537 BQO00549  konno            ClpPst.def DOSVAXJ3対応 10/11版
( 0) 24/10/11 23:53 11537:konnoさんへのコメント
ClpPst.def DOSVAXJ3対応 10/11版です。

  ClpPst.def v05e5 24-10-11 new!
・寅次氏作のクリップボードマクロの改造版。DOSVAXJ3に仮対応。あまりテストしてません。
・DOSVAXJ3は INT2F のFコール使用、それ以外は 従来どおりCLPPST.EXE 使用します。
・INT2F 使用時は、コピー64k以内、ペーストBL(8192)以内の制限があります。
・若干のバグ修正と一時ファイルでペースト速度アップ
・VZ1.6用 オリジナルVZでも動くと思います。

※ DOSVAXJ3以外で INT2F モードを試す時は、★印の行2か所をコメントにします。

#txt:ClpPst.def